python-正则表达式-findall()函数与匹配标记

2025-09-29 11:50:04

1、re.findall(pattern, string, flags=0)

1)pattern,正则表达式;string,要检测的字符串;flags匹配新常标记。

2)如各醒果pattern里没有组,艺调距或只有一个组,返回列表,元素是匹配到的字符串。

python-正则表达式-findall()函数与匹配标记

2、如果pattern里存在多于一个组,就返回一个元组的列表。

列表的元素是元组,每个元素就是一个匹配到的结果。

python-正则表达式-findall()函数与匹配标记

1、多行匹配:re.M(re.MULTILINE)

如果使用了re.M标记参数,re.findall(pattern, string, re.M)

正则表达式中 '^' 匹配字符串的开始,和每一行的开始,也就是换行符后面紧跟的符号;

python-正则表达式-findall()函数与匹配标记

2、多行匹配中 re.findall(pattern, string, re.M);

正则表达式中样式字符 '$' 匹配字符串尾,和每一行的结尾,也就是换行符前面那个符号。

python-正则表达式-findall()函数与匹配标记

3、re.findall(pattern, string, re.S)如果使用了,re.S标记参数。可让特殊字符  . (点)匹配任何字符。

python-正则表达式-findall()函数与匹配标记

4、上例中如不使用re.S标记参数,匹配不但任何结果。

python-正则表达式-findall()函数与匹配标记

1、首先要用函数re.compile(pattern, flags=0)建立正则对象。

compile()将正则表达式的样式编译为一个 正则表达式对象 (正则对象),此对象可以调用大多数的正则函数如:

Pattern.findall(string[, pos[, endpos]])

参数string是要匹配的字符串。后面两个是可选参数。

如图例中,findall()不限定范围查找,与re.findall()功能相同。。

python-正则表达式-findall()函数与匹配标记

2、后两个可选参数[, pos[, endpos]]是字符串的索引,用来限定范围。说白了就是字符串的切片,只不过写法不同:

例如:result=pat_Obj.findall(string,0,30)

python-正则表达式-findall()函数与匹配标记

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢