本文实例讲述了Python实现查找匹配项作处理后再替换回去的方法。分享给大家供大家参考,具体如下:
这里实现Python在对找到的匹配项进行适当处理后,再替换掉原来那个匹配的项。
#!/usr/bin/python # coding=GBK import re # 对m作适当处理后返回结果 def fun(m): print("in: %s" %m.group(0)) ret = m.group(0).upper()[::-1] return ret src = "what [can] I do for can you[can] come on" pat = "(?<= )(can)(?= )" #print(re.search(pat,src).group(1)) #result = re.sub(pat,lambda m:m.group(1).upper()[::-1],src) # 使用lambda result1 = re.sub(pat,lambda m: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] I do for can you[NAC] come on in: can in: can result2: what [NAC] I do for can you[NAC] come on [zcm@python #113]$
看到了吗,所有匹配"[can]"的项都被“转换成大写并逆顺”了。
更多关于Python相关内容可查看本站专题:《Python字符串操作技巧汇总》、《Python常用遍历技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》及《Python入门与进阶经典教程》
希望本文所述对大家Python程序设计有所帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。