python 爬虫 正则问题

测试8
不限制
3
300
编辑
测试7
不限制
1
300
编辑
测试5
不限制
1
300
编辑
测试4
不限制
1
300
编辑
测试3
不限制
0
300
编辑
我想匹配测试8到测试3我写的是这样的
feeds_plan_campaign_name=re.findall('''[.\S\s]*(.*?)[.\S\s]*[.\S\s]*[.\S\s]*[.\S\s]*[.\S\s]*[.\S\s]*[.\S\s]*[.\S\s]*[.\S\s]*''',feeds_plan_page_data.text,re.S)
printlen(feeds_plan_campaign_name)
forkinrange(len(feeds_plan_campaign_name)):
print"name1"+feeds_plan_campaign_name[k]
打印的结果只有测试3这是为啥呢?
RISEBY
浏览 371回答 2
2回答

噜噜哒

对于这种结构分明(带有html完整标签的内容),我建议不要使用正则表达式regex,更好的办法是使用Xpath,如果你还不知道什么是Xpath,请在w3school学习一下.仅需体验三分钟,你就会和我一样爱上这款工具.(逃)如果你坚持要用正则,我写了个,真的很麻烦!而且挺没有可移植性.如下,供参考:'''regex=re.compile("[\s]*([\u4e00-\u9fa50-9]*)[\s]*[\s]*([\u4e00-\u9fa5]*)[\s]*[\s]*[\s]*([0-9]*)[\s]*[\s]*[\s]*([0-9]*)")'''#(一行写不下,所以用了'''''',请拷贝测试时删去)返回值就是你需要的一个列表(多维数组).

哔哔one

佩服楼主的正则理解方式[.Ss][.Ss]一堆重复不会括号扩起来吗不想捕获的话用个非捕获括号(?:[.Ss][.Ss])*就你上面那个正则只有一个捕获括号,你还指望能返回啥呢
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript