第1个回答 2022-07-30
re模块是Python提供的处理正则表达式的标准模块。
match()、search()、findaII()函数
re.match()函数尝试在字符串的起始位置匹配一个模式,如果匹配成功,则返回MatchObject对象实例;否则返回None。re.search()函数扫描整个字符串并返回第一个成功的匹配,匹配成功返回MatchObject对象实例,否则返回None。re.findall()函数在字符串中找到正则表达式所匹配的所有子字符串,并返回一个列表;如果没有找到匹配的子字符串,则返回空列表。
3个函数的语法格式分别为:
其参数含义相同,说明如下。
· pattern:匹配的正则表达式。
· string:要匹配的字符串。
· flags:标志位,用于控制正则表达式的匹配模式。
下面分别对这3个函数进行举例说明。
1.re.match()函数
如果匹配成功,那么re.match()函数返回一个匹配的对象;否则返回None。
可以使用group(num)或groups()匹配对象函数来获取匹配表达式。
2.re.search()函数
如果匹配成功,那么re.search()函数返回一个匹配的对象;否则返回None。
可以使用group(num)或groups()匹配对象函数来获取匹配表达式。
和match()函数不同的是,search()函数扫描整个字符串,并返回第一个成功的匹配。
3.re.findaII()函数
re.findall()函数在字符串中找到正则表达式所匹配的所有子字符串,并返回一个列表;如果没有找到匹配的子字符串,则返回空列表。
注意
match()和search()函数只能匹配一次,而findall()函数可以匹配多次。
compiIe()函数
re.compile()函数用于编译正则表达式,生成一个正则表达式对象,供match()和search()函数使用。
compile()函数的语法格式如下:
其参数含义如下。
· pattern:匹配的正则表达式。
· flags:标志位,用于控制正则表达式的匹配模式。