⚽ . * ?+四者的用法
. :匹配除/n以外的任意一个字符
* :匹配前一个字符任意次
?:匹配前一个字符0次或1次
+:匹配前一个字符至少1次
💊search
用法re.search('正则表达式',字符串):search在字符串中查找第一个与正则表达式匹配的内容,如果存在则返回一个match对象,不存在就返回None
例1:下面代码返回的值,match=——
import re
m = re.search('ab*', "acabc")
print(m)
返回:<re.Match object; span=(0, 1), match='a'>
答案:'a'
此处的a匹配的是‘acabc’中的第一个元素a而不是后面的ab或abc
💊match
re.match('正则表达式',字符串)检查字符串的开头是否与正则表达式匹配,如果匹配则返回一个match对象,不存在则返回None
import re # 示例: s="abc1234第三方所说的" r = re.match('abc\d+',s) #检查s是不是以abc接数字开头的 print(r)
返回:<re.Match object; span=(0, 7), match='abc1234'>
匹配到字符串s是以‘abc1234’开头的
💊findall
用法re.findall('正则表达式',字符串):以列表返回字符串中与正则表达式匹配的内容,如果没有则返回空列表
import re
# 示例:
s="abc123abc1 abc3d\ndssf"
r = re.findall('abc\d+',s)
r2 = re.findall('dfsf',s)
print(r,r2)
返回:['abc123', 'abc1', 'abc3'] []