c 正则表达式 re_search_c语言正则表达式实例

c 正则表达式 re_search_c语言正则表达式实例

咱们书接上回,上次已经讲完了正则里面的最常用的函数,compile和findall,今天我们讲剩下的几个函数,虽然使用频率不高,但是各有所长,废话少说,那我就开始我的表演了

老规矩,点赞,转发分享再读,不然后续怎么输出精彩干货

3.re.sub函数(中等)

作用:完成两个动作,1查找;2替换,用于替换字符串中的匹配项。使用频率中等

语法:

re.sub(pattern,repl,string, count=0, flags=0)

函数参数说明:

pattern : 正则表达式。

repl : 替换的字符串(也可为一个函数)。

string : 要被查找替换的原始字符串。

count : 模式匹配后替换的最大次数,默认 0 表示替换所有的匹配。

flags:同上一个函数介绍

实例

题目:将字符串: "chenghaokeji666 chenghaokeji888" 中的数字统一替换为777

import re   str1 = "chenghaokeji666 chenghaokeji888"      # 通过\d匹配单个数字,+表示前面的字符匹配1个或多个, result = re.sub(r'\d+', "777", str1)   print("slogan是: ", result )  

以上实例执行结果如下:

slogan: chenghaokeji777 chenghaokeji777

练习:

有如下字符串str1 = "chenghaokeji666 chenghaokeji888 chenghaokeji1234 chenghaokeji6789",请将这里面的所有数字(无论长短)统一替换为三个*

答案:

import re      str1 = "chenghaokeji666 chenghaokeji888 chenghaokeji1234 chenghaokeji6789"      # [0-9]表示匹配单个数字0-9,+匹配前面的字符1个多个数字   num = re.sub(r'[0-9]+', "***", str1)   print("slogan: ", num )  

4.re.search函数(一般)

作用:匹配整个字符串,直到找到一个匹配,返回匹配后的对象,否则返回None。

语法:

re.search(pattern,string, flags=0)

函数参数说明:

同findall参数说明。

实例

import re      str1 = "2018-05-31"      # [0-9]表示匹配单个数字0-9,+匹配前面的字符1个或多个   result = re.search(r'^(\d{4})-(\d{2})-(\d{2})$', str1)   print("匹配后的结果对象为: ", result)   #   print("group()获取表达式匹配到的整体结果:", result.group())   print("group(1)获取第一组正则匹配到的结果", result.group(1))   print("group(2)获取第二组正则匹配到的结果", result.group(2))   print("group(2)获取第二组正则匹配到的结果", result.group(3))   print("groups()获取一个包含所有小组字符串的元组:", result.groups())  

代码输出:

匹配后的结果对象为:

group()获取表达式匹配到的整体结果: 2018-05-31

group(1)获取第一组正则匹配到的结果 2018

group(2)获取第二组正则匹配到的结果 05

group(2)获取第二组正则匹配到的结果 31

groups()获取一个包含所有小组字符串的元组:('2018', '05', '31')

心里话:咋样,现在明白了吗?group的用法就是如此,一般我们用的groups比较多,还有就是通过group(n)来获取第几组匹配的结果,分组的用法还算常用。

今天咱们就讲到这里后面还有match函数,以及match函数与search函数的区别,更加精彩,希望大家分享转发收藏以作备用,分享朋友圈成功的朋友可以联系我获取正则完整的教程pdf版本(朋友圈分组就别玩了,信任是相互的),后续学习更加方便

c 正则表达式 re_search_c语言正则表达式实例

本文【c 正则表达式 re_search_c语言正则表达式实例】由作者: 前端后端 提供,本站不拥有所有权,只提供储存服务,如有侵权,联系删除!
本文链接:https://www.cuoshuo.com/blog/4066.html

(0)
上一篇 2023-03-08 10:35:57
下一篇 2023-03-09 07:01:56

相关推荐

  • vb 数据库 大批量 快速 导入

    【分享成果,随喜正能量】 一个人如果怕吃苦、怕吃亏,则成就有限。每件事情的成功,都是有过程的,就是要耐烦、耐久、耐屈、耐苦。。 《VBA数据库解决方案》教程是我推出的第二套教程,目前已经是第一版修订了。这套教程定位于中级,是学完字典后的另一个专题讲解。数据库是数据处理的利器,教程中详细介绍了利用ADO连接ACCDB和EXCEL的方法和实例操作,教程第一版的修…

    2023-03-16
    100
  • 二叉排序树的构造过程_快速排序的详细过程

    描述 给定一个1到n的排列,按顺序依次插入到一棵二叉排序树中,请你将这棵二叉树前序遍历和后序遍历输出。 输入 第一行一个整数n。 接下来一行表示为n个整数,代表1到n的一个排列。 输出 输出所建成的二叉树的前序遍历和后序遍历。 输入样例 10(10个整数)输出样例2 1 6 3 5 4 9 7 8 10(前序) 1 4 5 3 8 7 10 9 6 2(后序…

    2023-03-09
    600
  • md5怎么看哪个文件坏了 md5文件用什么打开

    项目遇到一个需求,修改一个文件的md5,然后保存。 所谓md5就是把文件内容全部读出来,然后用md5算法计算出一个hash值,只要这个文件内容是不变的,md5值就不会变。也就是说,一个文件内容只对应一个md5值,如果两个文件的md5值一样,那么就可以断定这两个文件是一样的。当然这也只是概率的问题,极端情况下还是可能重复的,只是概率较低。 网上有一些查看和修改…

    2023-03-15
    000
  • 红旗Linux桌面操作系统,win10桌面没有我的电脑图标

    刚安装了win10,刚打开时发现桌面上没有我的电脑图标,这对于很多人来说是非常不适应的,那么win10我的电脑图标没了怎么办?下面学习啦小编就为大家介绍一下具体的解决方法吧,欢迎大家参考和学习。 1.打开设置点击个性化设置. 2.点击主题. 3.点击主题后,点击右侧桌面图标设置. 4.勾选计算机,点击运用后,点击确定.设置完成.

    2023-03-21
    000
  • 计算机二级c语言试题题库及答案

    C语言永远不会过时 其实学编程关键是学习其思想,如果你精通了一门,再去学其他的时候也很容易上手。C不会过时的,尤其是在unix、linux操作平台上,学好C是必须的。 C跟C++在很多方面也是兼容的,c是c++的基础。 再者c能从很大的程度上帮你了解计算机的发展史,数据结构等方面的知识,很多软件、甚至操作系统中的很大部分是用c来实现的。 还有一些电器芯片的程…

    2023-03-11
    900
  • 关系型数据库的基本原理(数据库系统的组成和特点)

    我们所熟知的数据库一般都是关系型数据库,比如Oracle、Sql Server、DB2和Mysql等。Oracle一般用在电信公司,Sql Server可以在中小型企业或零售公司寻觅其踪影,DB2一般配合IBM的大型机(如OS390),只有高大上的银行能够用得起来,而Mysql因其开源和支持高可用集群,经常在淘宝等网站亮其身份。 谈到数据库,最基本的莫过于对…

    2023-03-15
    100
  • python的readlines函数_python中readlines

    一、Python绝对路径和相对路径 明确一个文件所在的路径,有 2 种表示方式,分别是: ◆绝对路径:总是从根文件夹开始,Window 系统中以盘符(C:、D:)作为根文件夹,而 OS X 或者 Linux 系统中以 / 作为根文件夹。 ◆ 相对路径:指的是文件相对于当前工作目录所在的位置。例如,当前工作目录为 "C:\Windows\System…

    2023-03-10
    400
  • jquery选择器和css选择器的区别_css和css3的区别是什么

    CSS3在CSS2基础上,增强或新增了许多特性, 弥补了CSS2的众多不足之处,使得Web开发变得更为高效和便捷。 CSS3的现状 浏览器支持程度不够好,有些需要添加私有前缀 移动端支持优于PC端 不断改进中 应用相对广泛 应对的策略:渐进增强 (1)坚持渐进增强的原则:让低版本浏览器能正常访问页面,高版本的浏览器用户体验更好。【重要】 比如说,同样是一个头…

    2023-03-15
    300
  • scanf函数的用法及注意事项

    1. scanf函数的一般形式: scanf(格式控制,地址表列): “格式控制”的含义同printf函数。“地址表列”是由若干个地址组成的表列,可以是变量的地址,或字符串的首地址。 2. scanf函数中的格式声明 与printf函数中的格式声明相似,以%开始,以一个格式字符结束,中间可以插入附加的字符。 例3.5中的scanf函数是比较简单的。可以把sc…

    2023-03-08
    800
  • hosts文件的用途和用法 如何绑定host

    1 什么是hosts文件? hosts是一个没有扩展名的系统文件,其基本作用就是将一些常用的网址域名与其对应的 IP 地址建立一个关联“ 数据库 ”。当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从hosts文件中寻找对应的 IP 地址,一旦找到,系统就会立即打开对应网页,如果没有找到,则系统会将网址提交 DNS 域名解析服务器进行 IP 地址的解…

    2023-03-20
    000

发表回复

登录后才能评论
返回顶部
错说博客上线啦!