Python实现查找匹配项作处理后再替换回去的方法

yipeiwu_com6年前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相关内容可查看本站专题:《Python字符串操作技巧汇总》、《Python常用遍历技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python读写docx文件的方法

Python读写word文档有现成的库可以处理。我这里采用 python-docx。可以用pip install python-docx安装一下。 这里说一句,ppt和excel也有类似...

opencv 获取rtsp流媒体视频的实现方法

获取实时数据 import cv2 # user: admin # pwd: 12345 # main: 主码流 # ip: 192.168.1.64 # Channels: 实时...

wxPython窗口的继承机制实例分析

wxPython窗口的继承机制实例分析

本文实例讲述了wxPython窗口的继承机制,分享给大家供大家参考。具体分析如下: 示例代码如下: import wx class MyApp(wx.App): def...

Python下的Softmax回归函数的实现方法(推荐)

Python下的Softmax回归函数的实现方法(推荐)

Softmax回归函数是用于将分类结果归一化。但它不同于一般的按照比例归一化的方法,它通过对数变换来进行归一化,这样实现了较大的值在归一化过程中收益更多的情况。 Softmax公式 S...

python 划分数据集为训练集和测试集的方法

sklearn的cross_validation包中含有将数据集按照一定的比例,随机划分为训练集和测试集的函数train_test_split from sklearn.cross_...