Python的re.match()和re.search()的使用和区别
1.re.match()
re.match()的概念是从头匹配一个符合规则的字符串,从起始位置开始匹配,匹配成功返回一个对象,未匹配成功返回None。包含的参数如下:
- pattern: 正则模型
- string : 要匹配的字符串
- falgs : 匹配模式
match() 方法一旦匹配成功,就是一个match object对象,而match object对象有以下方法:
- group() 返回被 RE 匹配的字符串
- start() 返回匹配开始的位置
- end() 返回匹配结束的位置
- span()返回一个元组包含匹配 (开始,结束) 的位置
案例:
import re
# re.match 返回一个Match Object 对象
# 对象提供了 group() 方法,来获取匹配的结果
result = re.match("hello","hello,world")
if result:print(result.group())
else:print("匹配失败!")
输出结果:
hello
2.re.search()
re.search()函数会在字符串内查找模式匹配,只要找到第一个匹配然后返回,如果字符串没有匹配,则返回None。
格式:re.search(pattern, string, flags=0)
要求:匹配出文章阅读的次数
import reret = re.search(r"\d+", "阅读次数为 9999")
print(ret.group())
输出结果:
9999
3.match()和search()的区别:
- match()函数只检测RE是不是在string的开始位置匹配,
- search()会扫描整个string查找匹配
- match()只有在0位置匹配成功的话才有返回,如果不是开始位置匹配成功的话,match()就返回none
举例说明:
import re
print(re.match('super', 'superstition').span())
(0, 5)
print(re.match('super','insuperable'))
None
print(re.search('super','superstition').span())
(0, 5)
print(re.search('super','insuperable').span())
(2, 7)
Python的re.match()和re.search()的使用和区别相关推荐
- python的re2和re区别_浅谈Python中re.match()和re.search()的使用及区别
1.re.match()fvk免费资源网 re.match()的概念是从头匹配一个符合规则的字符串,从起始位置开始匹配,匹配成功返回一个对象,未匹配成功返回None.fvk免费资源网 包含的参数如下: ...
- python中re.match和re.search和re.findall的用法
match只从字符串的开头开始,只匹配开头,若匹配成功则返回对象,这个对象具体内容可用xx.group()来显示:不成功返回None. search从字符串开头开始搜索直到成功匹配上字符就停止,匹配成 ...
- python中search用法_Python3中正则模块re.compile、re.match及re.search函数用法详解
本文实例讲述了Python3中正则模块re.compile.re.match及re.search函数用法.分享给大家供大家参考,具体如下: re模块 re.compile.re.match. re.s ...
- python中import re_Python3中正则模块re.compile、re.match及re.search函数用法详解
本文实例讲述了Python3中正则模块re.compile.re.match及re.search函数用法.分享给大家供大家参考,具体如下: re模块 re.compile.re.match. re.s ...
- python re match groups_python re.match与re.search的区别
re.match与re.search的区别 re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None:而re.search匹配整个字符串,直到找到一个匹配. i ...
- re.match函数 re.search方法 区别
re.match函数 re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none. 函数语法: re.match(pattern, string, ...
- 28Python正则表达式、正则表达式对象、正则表达式修饰符、表达式模板、表达式实例、match函数、search方法、检索和替换、repl、compile、findall等
28Python正则表达式 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式. ...
- python re 简单实例_Python re.search方法代码示例
本文整理汇总了Python中re.search方法的典型用法代码示例.如果您正苦于以下问题:Python re.search方法的具体用法?Python re.search怎么用?Python re. ...
- JavaScript中的match方法和search方法
search在一个字串对象(string object)中查找关键词字串(规范表达式,regular expression),若匹配(即在目标字串中成功找到关键词)则返回关键词在目标字串中第一次出现的 ...
最新文章
- 编译Cocos2dx程序 (一)
- BugkuCTF-Misc:做个游戏(08067CTF)
- sscom 中文显示 乱码_解决SSM框架使用过程中的中文乱码问题
- HTML5培训教程学习之动效制作
- Angular应用只执行指定单元测试的小技巧
- 霍普分叉matlab程序,基于MATLAB_GUI的Kalman滤波程序
- 1.Intro to Deep Learning and Computer Vision
- android手机微信收藏功能实现,Android模仿微信收藏文件的标签处理功能
- 华为Mate 40新功能上线,抬手即可付款!
- tomcat服务自动关闭_windows10系统关闭自动更新服务
- 机器学习实现线性梯度算实现octave
- 一文熟练使用spring data jpa
- 计算机地球一小时word处理,地球一小时策划书word版
- 携程工作感言(一)(6.30)
- errno ETIMEDOUT npm ERR! network request to https://registry.npmjs.
- 《MLB棒球创造营》:走近棒球运动·圣路易斯红雀队
- 于明:APU能否接力取代迟暮的X86?
- 如何离线安装npm包
- Mybatis generator自动生成mybatis配置和类信息
- codeforces contest 985E. Pencils and Boxes+思维
热门文章
- mysql的索引介绍_2
- Jenkins Pipeline 语法
- mysql缺少函数_Sqlserver的窗口函数的精彩应用之数据差距与数据岛-答案篇
- matlab复数方程的根,matlab解一元三次方程,得到的都是复数根。
- mysql+encode+decode+错误_mysql decode encode 乱码问题
- GCC 和 MDK (即 Keil) 手工指定其地址及指针
- 开始学习3年前的东西——MCMS
- UVA 12166 Equilibrium Mobile
- cocos2dx集成友盟社会化分享图片崩溃问题
- 安装 linux kernel 3.12