0


python re多行匹配

如果你要多行匹配,那么需要加上

re.S

re.M

标志. 加上

re.S

后,

.

将会匹配换行符,默认

.

不会匹配换行符. 代码如下:

str = "a23b\na34b"

re.findall(r"a(\d+)b.+a(\d+)b", str)
#输出[]
#因为不能处理str中间有\n换行的情况

re.findall(r"a(\d+)b.+a(\d+)b", str, re.S)
#s输出[('23', '34')]

加上

re.M

后,

^$

标志将会匹配每一行,默认

^

$

只会匹配第一行. 代码如下:

str = "a23b\na34b"

re.findall(r"^a(\d+)b", str)
#输出['23']

re.findall(r"^a(\d+)b", str, re.M)
#输出['23', '34']

本文转载自: https://blog.csdn.net/woaichixiaodangao/article/details/121398628
版权归原作者 放星星的绵羊 所有, 如有侵权,请联系我们删除。

“python re多行匹配”的评论:

还没有评论