2024-09-24 10:22:33 发布
网友
假设我有string list sList[ 'aaa', 'bbb', ccc'] 我想用re.sub公司将第一个匹配更改为“aaa”,第二个匹配更改为“bbb”,第三个匹配更改为“ccc”。(将列表中的编号与索引编号匹配)
string list sList[ 'aaa', 'bbb', ccc']
stringToSearch = 'zzz is zzz is zzz'
我试过用
但结果是把所有的匹配都换成了“aaa”。在
顺便说一句,我使用Python 3.6和re-module。在
Python 3.6
在您的例子中,只需将replace()与count 1一起使用:
replace()
for s in sList: stringToSearch = stringToSearch.replace('zzz', s, 1)
与re.sub()类似,将计数指定为1:
re.sub()
或者直接使用re.sub():
len(sList) or -1的原因是re.sub()仍将抛出异常,如果sList为空,count为0,则{}可以抑制此异常。在
len(sList) or -1
sList
count
在您的例子中,只需将
replace()
与count 1一起使用:与
^{pr2}$re.sub()
类似,将计数指定为1:或者直接使用
^{3}$re.sub()
:len(sList) or -1
的原因是re.sub()
仍将抛出异常,如果sList
为空,count
为0,则{相关问题 更多 >
编程相关推荐