代码如下:
#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)
打印结果如下:
中国
1|3
2244