是否可以忽略 python replace() 引号中的字符串?
python 205
原文标题 :Is it possible to ignore string in quotes for python replace()?
是否可以忽略 python replace() 引号中的字符串?我有一个这样的字符串变量:
a = "I like bananas 'I like bananas'"
我想通过replace()
得到这样的结果:
"I like apples 'I like bananas'".
但是当我执行print(a.replace("bananas", "apples"))
时,结果是:
"I like apples 'I like apples'".
如何使replace()
忽略引号中的字符串?
回复
我来回复-
gnight 评论
该回答已被采纳!
用’分割字符串,只处理数组的奇数元素,重新组合字符串
a = "I like bananas 'I like bananas'" ap = a.split("'") ar = [ ai.replace("bananas", "apples") if i%2==0 else ai for i,ai in enumerate(ap)] print("'".join(ar))
2年前 -
Tim-Erwin 评论
不,这是不可能的,你不能让
replace
忽略那些匹配。您必须编写自己的解决方案。2年前 -
Python learner 评论
您可以使用
count
value(替换方法的可选参数)来指定要替换的旧值的出现次数。它适用于两者。a = "I like bananas \"I like bananas\"" print(a.replace("bananas", "apples",1)) a = "I like bananas 'I like bananas'" print(a.replace("bananas", "apples",1))
2年前