美文网首页
一个例子帮您掌握python正则re.match、re.sear

一个例子帮您掌握python正则re.match、re.sear

作者: 测试开发Kevin | 来源:发表于2023-10-06 11:36 被阅读0次

在使用python正则进行字符串匹配查询时,最常用的三个函数是re.match、re.search和re.findall,在这里我就用一个例子带大家了解这三者的使用区别,话不多说我们直接上代码!

import re

txt="test,a:123,b:1234,c:12345,hello!"

re.match

#从首字母开始开始匹配,string如果包含pattern子串,则匹配成功,返回Match对象,失败则返回None

m1=re.match(r'(\d+),', txt)

print(m1)

输出:None

原因是 txt 变量是以test开头,所以并没有从首字母开始完全匹配

re.search

#若string中包含pattern子串,则返回匹配对象,否则返回None,注意,如果string中存在多个pattern子串,只返回第一个。

m2=re.search(r'(\d+),', txt)

print(m2)

输出:<re.Match object; span=(7, 11), match='123,'>

原因是search是只要在字符串中知道匹配对象,就会返回第一个匹配的对象。如果想要看具体的匹配对象值,使用print(m2.group())即可。

re.findall

#findall 通过group() 来进行多个值得匹配,返回string中所有与pattern相匹配的全部字串,返回形式为list。

m3 = re.findall(r'(\d+),', txt)

print(m3)

输出:['123', '1234', '12345']

原因是findall会返回多个符合匹配表达式的对象值,返回形式是list

#如果需要匹配多个分组表达式,可以使用例如:(\w+) 和(\d+)两个group 表达式进行匹配

m4 = re.findall(r'(\w+):(\d+),', txt)

print(m4)

输出:[('a', '123'), ('b', '1234'), ('c', '12345')]

我的每一篇文章都希望帮助读者解决实际工作中遇到的问题!如果文章帮到了您,劳烦点赞、收藏、转发!您的鼓励是我不断更新文章最大的动力!

相关文章

  • python正则表达式2

    python正则表达式2 re.match()匹配多个 例子: 输出: 表达式1 的匹配结果可以使用 matchO...

  • 正则表达式

    python 正则使用方法 re.match re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,...

  • 2018-03-30

    python 正则 re 模块常用方法re.match #从头匹配re.search #...

  • 正则

    一、正则概述 re 模块,提供了正则表达式模式 re模块使python可以使用所有的正则 re.match 函数 ...

  • RegExp Cheatsheet

    正则匹配技巧 使用python包re 基本函数 re.match(正则表达式, 原字符串) 从最开始匹配,但只匹配...

  • python正则表达式

    re模块Python增加了re模块使python语言拥有全部正则表达式的功能。re.match(pattern,s...

  • Python3正则表达式常用方法

    前言 re.findall(),re.search()和re.match()是Python正则表达式中常用的方法,...

  • 正则表达式

    Python中包含正则表达式的模块。 使用前先导入正则表达式模块: 语法: re.match 从头开始匹配re.s...

  • Python模块·Re正则匹配、切割、替换

    一、Re模块: 对应正则表达式的Python模块 分类关键字 / 函数 / 方法说明数据匹配--re.match(...

  • 正则表达式五---re的所有函数方法

    re.match re.match是用来进行正则匹配检查的方法,若字符串匹配正则表达式,则match方法返回匹配对...

网友评论

      本文标题:一个例子帮您掌握python正则re.match、re.sear

      本文链接:https://www.haomeiwen.com/subject/jpipbdtx.html