您的位置:首页 > 编程语言 > Python开发

Python正则匹配多行,多个数据

2013-11-29 14:17 501 查看
最近用Python做一个crawler工具的时候,发现用一个正则表达式可以匹配到个数据的时候用match.group()只能打印出第一个数据,其它数据不能打印出来。最后找到解决方法,现在记录一下,直接贴代码:

P = re.compile(r'<a(\s)href=\"/android/info/([0-9]*)\.html\?fw=([0-9]*)\"', re.M)
match = p.findall(txt)
if match:
print match

在初始化正则的时候一定要加上参数re.M这个参数的意思是去匹配多行,如果没有加re.M的话程序匹配到第一个结果后就会结束。这就是之前为啥一直只能打印一个数据的原因了。而且必须要用P.findall()这个方法。

之前的代码如下:

p = re.compile(r'<a(\s)href=\"/android/info/([0-9]*)\.html\?fw=([0-9]*)\"')
match = info.search(txt)
if match:
print match.group()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: