用另一个替换子串,但仅当某个子串跟在i后面时

2024-07-06 22:09:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试用子字符串“cat”替换子字符串“gta”。但条件是“gta”后面必须紧跟子字符串“dog”。你知道吗

示例:“gtagtadogcat”将变为“gtacatdogcat”

我正在努力的部分是试图编写程序来找到“gta”,并验证“dog”是幕后黑手,如果是真的,则将“gta”改为“cat”。你知道吗


Tags: 字符串示例条件catdog编写程序gta用子
3条回答

你可以使用正则表达式:

re.sub('gta(dog)', r'cat\1', 'gtagtadogcat')

输出:

'gtacatdogcat'


*编辑:如果你放入整个字符串,你就不需要forloop了。举个例子:

re.sub('gta(dog)', r'cat\1', 'gtagtadogcat_moretextgta_lastgtadog')

输出:

'gtacatdogcat_moretextgta_lastcatdog'
>>> 'gtagtadogcat'.replace('gta'+'dog', 'cat'+'dog')
'gtacatdogcat'
old_string = 'gtagtadogcat'
print(old_string.replace('gtacat','dogcat'))

输出:gtagtadogcat

相关问题 更多 >