这里有新鲜出炉的 Python 入门,程序狗速度看过来!
Python 是一种面向对象、解释型计算机程序设计语言,由 Guido van Rossum 于 1989 年底发明,第一个公开发行版发行于 1991 年。Python 语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够把用其他语言制作的各种模块(尤其是 C/C++)很轻松地联结在一起。
这篇文章主要介绍了 Python 实现查找匹配项作处理后再替换回去的方法, 涉及 Python 字符串查找、转换、输出等相关操作技巧, 需要的朋友可以参考下
本文实例讲述了 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 程序设计有所帮助。
来源: http://www.phperz.com/article/17/0709/336692.html