正则表达式简介

正则表达式,又称正规表示式、正规表示法、正规表达式、规则表达式、常规表示法(英语: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'\1', text))

结果输出如下:

Text: Make this **cai**. This **junsheng**.

Bold: Make this cai. This junsheng.

总结

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

python正则表达式分组替换_python使用正则表达式替换匹配成功的组相关推荐

  1. python正则替换_python正则之替换字符串

    替换字符串函数sub 可以将匹配的字符串替换成想要的字符串,并且替换方式可以自定义,可以传入一个自定义的函数对匹配到的字符串进行高级处理 sub(pattern, repl, string, coun ...

  2. python读取html文件正则替换_Python使用正则表达式过滤或替换HTML标签的方法详解...

    本文实例讲述了Python使用正则表达式过滤或替换HTML标签的方法.分享给大家供大家参考,具体如下: python正则表达式关键内容: python正则表达式转义符: . 匹配除换行符以外的任意字符 ...

  3. python 正则表达函数_python笔记-正则表达式常用函数

    1.re.findall()函数 语法:re.findall(pattern,string,flags=0) --> list(列表) 列出字符串中模式的所有匹配项,并作为一个列表返回.如果无匹 ...

  4. 中正则表达式详解_python :正则表达式/re库 超级详细de注释解释

    首先要解释,什么是正则表达式: 给定一串字符串,我们可以提取他的特征,把他抽象成一个类型. 下次遇到和这个字符串同类的字符串,我们只需要判断是否符合特征,就知道这个字符串是不是同类的. 举个例子: 每 ...

  5. python字符串正则替换_Python用正则表达式进行字符串替换方法

    Python正则表达式在使用中会经常应用到字符串替换的代码.这篇文章主要介绍了Python正则表达式如何进行字符串替换,具有一定的参考价值,感兴趣的小伙伴们可以参考一下. Python正则表达式在使用 ...

  6. python里使用正则表达式来替换匹配成功的组名

    在前面学习了找到组之后,通过组序号来替换,比如像bold.sub(r'<b>\1</b>', text)),这里是通过\1来替换的,这样的方式就是简单,快捷.但是不方便维护,不 ...

  7. python 字符串去空格_Python去除、替换字符串空格的处理方法

    个人想到的解决方法有两种,一种是 .replace(' old ',' new ') 第一个参数是需要换掉的内容比如空格,第二个是替换成的内容,可以把字符串中的空格全部替换掉. 第二种方法是像这样 s ...

  8. python search函数 中文_python使用正则表达式的search()函数实现指定位置搜索功能...

    前面学习过search()可以从任意一个文本里搜索匹配的字符串,也就是说可以从任何位置里搜索到匹配的字符串.但是现实世界很复杂多变的,比如限定你只能从第100个字符的位置开始匹配,100个字符之前的不 ...

  9. python一键替换_python 实现批量替换文本中的某部分内容

    一.介绍 在做YOLOv3项目时,会需要将文本文件中的某部分内容进行批量替换和修改,所以编写了python程序批量替换所有文本文件中特定部分的内容. 二.代码实现 import re import o ...

最新文章

  1. 马斯克:我有一个大胆的想法!给红绿灯加个AI视觉「外挂」
  2. PHP问题 —— Deprecated: Function ereg_replace() is de
  3. 架构师之路 — 部署架构 — 集群部署
  4. 【408预推免复习】计算机组成原理之控制单元的功能和控制单元的设计
  5. window.location操作url对象
  6. 程序运行正常,数据库没反应
  7. 助力产教融合,阿里云教育一体机发布
  8. JS字符串与二进制的相互转化
  9. LWIP之TCP协议
  10. 部署SCOM2012 SP1
  11. 大型连锁百货运维审计用什么软件好?有哪些功能?
  12. c语言中的内存4区域模型(堆,栈,全局区,代码区)
  13. 中国大学慕课MOOC第七章测试题答案
  14. 初识动态规划(一)简单入门动态规划与上手操作
  15. 计算机在游戏界面应用,电脑在游戏界面怎么返回桌面
  16. 《实施Cisco统一通信管理器(CIPT1)》一2.5 跨越IP WAN的集群部署模型
  17. 利用js加密保护核心功能代码
  18. Taro关闭页面时停止计时器
  19. php如何制作视频特效,视频特效怎么弄 给视频加一个主题样式,简单几步制作出属于自己风格的独特视频...
  20. ue4模型导出_UE4-导入和导出

热门文章

  1. 银行卡余额为零会自动销户吗
  2. 一金创投安全放心怎样买理财产品挣钱?(买理财产品挣钱诀窍)
  3. Python爬虫入门教程18:好看视频的爬取
  4. Clickhouse学习
  5. Originality Self-portrait 创意自画像——p5.js
  6. 计算机游戏的作文,游戏迷作文
  7. xp启用文件打印机共享服务器,XP服务器打印机共享流程.docx
  8. java 润乾报表打印4.5_润乾报表中常见的打印类问题的总结| 润乾软件 | 学步园...
  9. 辛巴巴巴鲁比啦音乐计算机版,辛巴巴巴鲁比啦什么歌
  10. CODE学习笔记一——构建二进制加法器