python对找到的匹配项作处理后再替换回去
生活随笔
收集整理的這篇文章主要介紹了
python对找到的匹配项作处理后再替换回去
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
python在對找到的匹配項進行適當(dāng)處理后,再替換掉原來那個匹配的項。
#!/usr/bin/python # coding=GBKimport re# 對m作適當(dāng)處理后返回結(jié)果 def fun(m):print("in: %s" %m.group(0))ret = m.group(0).upper()[::-1]return retsrc = "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中使用函數(shù) 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 onin: can in: can result2: what [NAC] I do for can you[NAC] come on [zcm@python #113]$
看到了嗎, 所有匹配"[can]"的項都被“轉(zhuǎn)換成大寫并逆順”了。
總結(jié)
以上是生活随笔為你收集整理的python对找到的匹配项作处理后再替换回去的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ORACLE关于段的HEADER_BLO
- 下一篇: 我用Python写了一个做题软件控制台版