gpt4 book ai didi

python - 替换字符串中多次出现的模式一次

转载 作者:太空宇宙 更新时间:2023-11-03 14:23:46 24 4
gpt4 key购买 nike

我有一个字符串:

I am Tony not charlie, Hey charlie how's you?

我想替换第二个“Charlie”,而不是第一个。

期望的字符串:

I am Tony not charlie, Hey Tony how's you?

我正在使用以下语句来执行此操作

>>> re.sub(r',\s\w{3}\scharlie\s', ' Tony ', 'I am Tony not charlie, Hey charlie how\'s you\?')
"I am Tony not charlie Tony how's you?"

但它取代的比我想要的更多。

我怎样才能让它只替换第二个“查理”而不替换其他任何东西?

最佳答案

将第一个子字符串(及其后的所有内容)替换为自身并添加一个限制 =1 以防止替换第 4 次、第 6 次等。

s = "I am Tony not charlie, Hey charlie how's you?"
print re.sub('(charlie.*?)charlie', r'\1Tony', s, 1)

关于python - 替换字符串中多次出现的模式一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23488969/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com