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


Posted in Python onJune 10, 2017

本文实例讲述了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 相关文章推荐
python中黄金分割法实现方法
May 06 Python
Python判断列表是否已排序的各种方法及其性能分析
Jun 20 Python
详谈Python2.6和Python3.0中对除法操作的异同
Apr 28 Python
Python基于list的append和pop方法实现堆栈与队列功能示例
Jul 24 Python
Python中单、双下划线的区别总结
Dec 01 Python
pygame游戏之旅 计算游戏中躲过的障碍数量
Nov 20 Python
基于Python的自媒体小助手---登录页面的实现代码
Jun 29 Python
Keras 数据增强ImageDataGenerator多输入多输出实例
Jul 03 Python
Python判断远程服务器上Excel文件是否被人打开的方法
Jul 13 Python
Python下载网易云歌单歌曲的示例代码
Aug 12 Python
简述python&amp;pytorch 随机种子的实现
Oct 07 Python
使用python实现学生信息管理系统
Feb 25 Python
新手如何快速入门Python(菜鸟必看篇)
Jun 10 #Python
python+requests+unittest API接口测试实例(详解)
Jun 10 #Python
基于python爬虫数据处理(详解)
Jun 10 #Python
python实现稀疏矩阵示例代码
Jun 09 #Python
Python实现数据库并行读取和写入实例
Jun 09 #Python
详解python之多进程和进程池(Processing库)
Jun 09 #Python
Python使用django搭建web开发环境
Jun 09 #Python
You might like
PHP中防止SQL注入实现代码
2011/02/19 PHP
PHP实现在对象之外访问其私有属性private及保护属性protected的方法
2017/11/20 PHP
php微信公众号开发之答题连闯三关
2018/10/20 PHP
PHP中localeconv()函数的用法
2019/03/26 PHP
Laravel中GraphQL接口请求频率实战记录
2020/09/01 PHP
javascript 验证日期的函数
2010/03/18 Javascript
基于jQuery的图片大小自动适应实现代码
2010/11/17 Javascript
jQuery回调函数的定义及用法实例
2014/12/23 Javascript
javascript 构造函数方式定义对象
2015/01/02 Javascript
浅谈jQuery事件绑定原理
2015/01/02 Javascript
JS动态加载当前时间的方法
2015/02/09 Javascript
jQuery实现拖拽可编辑模块功能代码
2017/01/12 Javascript
jQuery EasyUI Draggable拖动组件
2017/03/01 Javascript
深入浅析AngularJS中的一次性数据绑定 (bindonce)
2017/05/11 Javascript
详解10分钟学会vue滚动行为
2017/09/21 Javascript
jQuery实现浏览器之间跳转并传递参数功能【支持中文字符】
2018/03/28 jQuery
vue axios请求拦截实例代码
2018/03/29 Javascript
微信小程序云开发之使用云存储
2019/05/17 Javascript
laravel实现中文和英语互相切换的例子
2019/09/30 Javascript
[02:25]DOTA2英雄基础教程 熊战士
2014/01/03 DOTA
[04:09]2018年度DOTA2社区贡献奖-完美盛典
2018/12/16 DOTA
利用python解决mysql视图导入导出依赖的问题
2017/12/17 Python
pyspark.sql.DataFrame与pandas.DataFrame之间的相互转换实例
2018/08/02 Python
用python写一个定时提醒程序的实现代码
2019/07/22 Python
python读取word 中指定位置的表格及表格数据
2019/10/23 Python
基于python实现微信好友数据分析(简单)
2020/02/16 Python
CSS伪类与CSS伪元素的区别及由来具体说明
2012/12/07 HTML / CSS
教师实习期自我鉴定
2013/10/06 职场文书
报社实习生自荐信
2014/01/24 职场文书
2014年巴西世界杯口号
2014/06/05 职场文书
公司大门门卫岗位职责
2014/06/11 职场文书
2015年校长新年寄语
2014/12/08 职场文书
行政人事主管岗位职责
2015/04/11 职场文书
高一语文教学反思
2016/02/16 职场文书
MySQL索引篇之千万级数据实战测试
2021/04/05 MySQL
如何解决php-fpm启动不了问题
2021/11/17 PHP