我有一个文件,上面写着:
1,2,"toto , titi",3"titi ,, tata",4
我想用冒号替换引号(
,
)中的每个逗号"
所以我的出路应该是:
1,2,"toto : titi",3"titi :: tata",4
我正在考虑通过
:
进行拆分,但我认为有更好的方法。 最佳答案
为此,您可以使用regex:
import re
string = '1,2,"toto , titi",3"titi ,, tata",4'
print(re.sub('".*?"', lambda x: x.group().replace(',', ':'), string)) #Output 1,2,"toto : titi",3"titi :: tata",4
sub
模块中的re
方法将替换为regex的帮助。对于regex,应该使用非贪婪模式
.*?
以避免,3
替换为:3
您可以测试regex online
然后我用lambda函数替换匹配组中的逗号。