python re.sub 括号匹配替换匹配到的内容后接数字

如果代码为:

text = re.sub(r'(?<=[{])([a-z]+)6(?=[}])', r'\13', text)

上面代码会报错,因为没有组合13,所以不能获得组合13的内容。

但是我们要实现的是将{ni6}中的ni6替换成ni3,我们应该这么写:

text = re.sub(r'(?<=[{])([a-z]+)6(?=[}])', r'\g<1>3', text)

 

另外,记录我的批量替换代码(将文件夹下的所有文件的拼音6都替换成3):

 

posted @ 2022-10-07 20:46  I'm_江河湖海  阅读(8)  评论(0)    收藏  举报