python使用正则表达式替换匹配成功的组


Posted in Python onNovember 17, 2017

正则表达式简介

正则表达式,又称正规表示式、正规表示法、正规表达式、规则表达式、常规表示法(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。

许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。正则表达式通常缩写成“regex”,单数有regexp、regex,复数有regexps、regexes、regexen。

最初的正则表达式出现于理论计算机科学的自动控制理论和形式化语言理论中。在这些领域中有对计算(自动控制)的模型和对形式化语言描述与分类的研究。 1940年,Warren McCulloch与Walter Pitts将神经系统中的神经元描述成小而简单的自动控制元。 1950年代,数学家斯蒂芬·科尔·克莱尼利用称之为“正则集合”的数学符号来描述此模型。肯·汤普逊将此符号系统引入编辑器QED,然后是Unix上的编辑器ed,并最终引入grep。自此,正则表达式被广泛地使用于各种Unix或者类似Unix的工具,例如Perl。

Python提供了对正则表达式的支持,它内嵌在Python中,通过Python的re模块提供。

re模块提供了类似于Perl的正则表达式语法。

通过使用正则表达式,我们可以制定需要匹配的字符串的特定格式,然后从需要处理的字符串中提取我们感兴趣的字符串。Python中的re模块也提供了像sub(),subn(),split()这些方法来实现通过正则表达式来灵活地进行文本的替换和分割。

在Python中,正则表达式会被编译成一系列的字节码,然后由通过C编写的正则表达式引擎进行执行。

好了,下面看下python使用正则表达式替换匹配成功的组,具体内容如下所示:

在前面主要学习了怎么样匹配成功,都没有修改原来的内容的。现在来学习一个匹配成功之后修改相应的内容,在这里使用sub()函数来实现这个功能,同时使用引用组号来插入原来的字符,例子如下:

#python 3.6
#蔡军生 
#http://blog.csdn.net/caimouse/article/details/51749579
#
import re
bold = re.compile(r'\*{2}(.*?)\*{2}')
text = 'Make this **cai**. This **junsheng**.'
print('Text:', text)
print('Bold:', bold.sub(r'<b>\1</b>', text))

结果输出如下:

Text: Make this **cai**. This **junsheng**.
Bold: Make this <b>cai</b>. This <b>junsheng</b>.

总结

以上所述是小编给大家介绍的python使用正则表达式替换匹配成功的组,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python 模拟员工信息数据库操作的实例
Oct 23 Python
pycharm远程调试openstack代码
Nov 21 Python
Python实现自动上京东抢手机
Feb 06 Python
python函数式编程学习之yield表达式形式详解
Mar 25 Python
tensorflow 1.0用CNN进行图像分类
Apr 15 Python
对django中render()与render_to_response()的区别详解
Oct 16 Python
django将网络中的图片,保存成model中的ImageField的实例
Aug 07 Python
python 函数的缺省参数使用注意事项分析
Sep 17 Python
详解pyinstaller selenium python3 chrome打包问题
Oct 18 Python
python 比较2张图片的相似度的方法示例
Dec 18 Python
分析Python感知线程状态的解决方案之Event与信号量
Jun 16 Python
教你使用Python获取QQ音乐某个歌手的歌单
Apr 03 Python
python定时利用QQ邮件发送天气预报的实例
Nov 17 #Python
详解python eval函数的妙用
Nov 16 #Python
Python算法之图的遍历
Nov 16 #Python
Python之Scrapy爬虫框架安装及使用详解
Nov 16 #Python
python字典操作实例详解
Nov 16 #Python
python实现报表自动化详解
Nov 16 #Python
TF-IDF算法解析与Python实现方法详解
Nov 16 #Python
You might like
终于听上了直流胆调频
2021/03/02 无线电
php 什么是PEAR?(第二篇)
2009/03/19 PHP
如何使用PHP计算上一个月的今天
2013/05/23 PHP
php生成xml时添加CDATA标签的方法
2014/10/17 PHP
基于PHP代码实现中奖概率算法可用于刮刮卡、大转盘等抽奖算法
2015/12/20 PHP
浅谈PHP的数据库接口和技术
2016/12/09 PHP
PHP配合fiddler抓包抓取微信指数小程序数据的实现方法分析
2020/01/02 PHP
AngularJS学习笔记之TodoMVC的分析
2015/02/22 Javascript
JS如何设置cookie有效期为当天24点并弹出欢迎登陆界面
2016/08/04 Javascript
vue从使用到源码实现教程详解
2016/09/19 Javascript
js实现随机抽选效果、随机抽选红色球效果
2017/01/13 Javascript
springMVC + easyui + $.ajaxFileUpload实现文件上传注意事项
2017/04/23 Javascript
js微信应用场景之微信音乐相册案例分享
2017/08/11 Javascript
JQuery选中select组件被选中的值方法
2018/03/08 jQuery
vue脚手架及vue-router基本使用
2018/04/09 Javascript
详解vantUI框架在vue项目中的应用踩坑
2018/12/06 Javascript
小程序绑定用户方案优化小结
2019/05/15 Javascript
[01:10]DOTA2次级职业联赛 - EP战队宣传片
2014/12/01 DOTA
python执行外部程序的常用方法小结
2015/03/21 Python
Python中函数参数设置及使用的学习笔记
2016/05/03 Python
Python 专题五 列表基础知识(二维list排序、获取下标和处理txt文本实例)
2017/03/20 Python
浅谈DataFrame和SparkSql取值误区
2018/06/09 Python
对Python 两大环境管理神器 pyenv 和 virtualenv详解
2018/12/31 Python
搞定这套Python爬虫面试题(面试会so easy)
2019/04/03 Python
Django Session和Cookie分别实现记住用户登录状态操作
2020/07/02 Python
Matplotlib 绘制饼图解决文字重叠的方法
2020/07/24 Python
Myprotein瑞士官方网站:运动营养和健身网上商店
2019/09/25 全球购物
成功经营餐厅的创业计划书范文
2013/12/26 职场文书
宾馆总经理岗位职责
2014/02/14 职场文书
大学生通用个人自我评价
2014/04/27 职场文书
2014年中秋寄语
2014/08/11 职场文书
迎新晚会主持词开场白
2015/05/28 职场文书
修改MySQL的数据库引擎为INNODB的方法
2021/05/26 MySQL
Java使用Unsafe类的示例详解
2021/09/25 Java/Android
python游戏开发Pygame框架
2022/04/22 Python
如何用H5实现好玩的2048小游戏
2022/07/23 HTML / CSS