python re sub 替换多个_re.sub 实现多处替换

1   | 表示或的意思

将所有字母替换掉

result_content = re.sub('a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z','',result_content)

2  将每种替换放在小括号中,最后放在中括号中

将& \ / ;四个符合替换

result_content = re.sub(r'[(&)(\)(/)(;)]','',result_content)

3  按字典替换

#encoding=utf-8

print '中国'

# 一次完成多个字符串替换

#利用正则表达式re的sub方法

import re

def multiple_replace(text,adict):

rx = re.compile('|'.join(map(re.escape,adict)))

def one_xlat(match):

return adict[match.group(0)]

return rx.sub(one_xlat,text) #每遇到一次匹配就会调用回调函数

#把key做成了 |分割的内容,也就是正则表达式的OR

map1={'1':'2','3':'4',}

print '|'.join(map(re.escape,map1))

str='1133'

print multiple_replace(str,map1)

参考:https://blog.csdn.net/huludan/article/details/50925735

你可能感兴趣的:(python,re,sub,替换多个)