Python实现查找匹配项作处理后再替换回去的方法
本文实例讲述了Python实现查找匹配项作处理后再替换回去的方法。分享给大家供大家参考,具体如下:
这里实现Python在对找到的匹配项进行适当处理后,再替换掉原来那个匹配的项。
#!/usr/bin/python
#coding=GBK
importre
#对m作适当处理后返回结果
deffun(m):
print("in:%s"%m.group(0))
ret=m.group(0).upper()[::-1]
returnret
src="what[can]Idoforcanyou[can]comeon"
pat="(?<=
)(can)(?=
)"
#print(re.search(pat,src).group(1))
#result=re.sub(pat,lambdam:m.group(1).upper()[::-1],src)
#使用lambda
result1=re.sub(pat,lambdam:m.group(0).upper()[::-1],src)
print("result1:%s\n"%result1)
#在re.sub中使用函数
result2=re.sub(pat,fun,src)
print("result2:%s"%result2)
运行输出:
[zcm@python#112]$./del.py result1:what[NAC]Idoforcanyou[NAC]comeon in:can in:can result2:what[NAC]Idoforcanyou[NAC]comeon [zcm@python#113]$
看到了吗,所有匹配"[can]"的项都被“转换成大写并逆顺”了。
更多关于Python相关内容可查看本站专题:《Python字符串操作技巧汇总》、《Python常用遍历技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》及《Python入门与进阶经典教程》
希望本文所述对大家Python程序设计有所帮助。