zl程序教程

您现在的位置是:首页 >  其他

当前栏目

python re多行匹配

2023-03-20 14:56:13 时间

如果你要多行匹配,那么需要加上re.Sre.M标志. 加上re.S后, .将会匹配换行符,默认.不会匹配换行符. 代码如下:

str = "a23b
a34b"

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

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

 加上re.M后,^$标志将会匹配每一行,默认^$只会匹配第一行. 代码如下:

str = "a23b
a34b"

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

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