re中match,search和findall方法区别

re.match 用法

re.match语法:re.match(pattern,string,flags=0)
pattern:表示正则表达式
string:要匹配的字符
flags:控制匹配的方式
**re.match匹配方式:**从字符起始位置匹配,若起始位置匹配不成功返回none。即只匹配起始位置

import re 
string='www.baidu.com'
pattern1='www'
pattern2='com'
m_match1=re.match(pattern1,string)
m_match2=re.match(pattern2,string)
print(m_match1)
print(m_match1.span()) # 输出匹配到的位置
print(m_match1.group()) # 输出匹配到的字符串
print(m_match2)

返回

#结果
<re.Match object; span=(0, 3), match=‘www’>
(0,3)
www
None

re.search用法

re.match 只能在起始位置匹配,而re.search可以扫描整个字符串并返回第一个成功的匹配。

import re 
string='www.baidu.com'
pattern='com'
m_match1=re.match(pattern,string)
m_match2=re.search(pattern,string)
print(m_match1)
print(m_match2)

#结果
None
<re.Match object; span=(10, 13), match=‘com’>

re.findall用法

上述两个都只能找到一个匹配结果,而findall可以找到所有满足匹配条件的结果,并以列表的形式返回。

import re 
string='www.baidu.com,www.runoob.com,www.163.com'
pattern='www'
m_match1=re.match(pattern,string)
m_match2=re.search(pattern,string)
m_match3=re.findall(pattern,string)
print(m_match1)
print(m_match2)
print(m_match3)

#结果
<re.Match object; span=(0, 3), match=‘www’>
<re.Match object; span=(0, 3), match=‘www’>
[‘www’, ‘www’, ‘www’]

三者区别

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值