正则表达式 findall的扩展
Posted grave-seven
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正则表达式 findall的扩展相关的知识,希望对你有一定的参考价值。
1 # find扩展,对于分组的问题 2 # 仔细看下面这句代码,图片的地址有两个,我只想取一个 3 # 但这行代码并不能满足需求 会打印出两个地址 4 image_str2 = """<img alt="达浪妹妹哟的直播" data-original="https://rpic.douyucdn.cn/live-cover/appCovers/2018/08/22/5376712_20180822144021_small.jpg" src="https://rpic.douyucdn.cn/live-cover/appCovers/2018/08/22/5376712_20180822144021_small.jpg" width="283" height="163" class="JS_listthumb" style="display: block;">""" 5 print(re.findall(‘https?://.+?.jpg‘, image_str2)) 6 # 解决办法: 匹配的时候在前面再点关键字用来区分 7 # 再用括号 括起来需要的数据,findall在里面写分组后会取分组的数据 8 print(re.findall("""data-original="(https?://.+?.jpg)""", image_str2)) 9 print(re.findall("""src="(https?://.+?.jpg)""", image_str2)) 10 # findall会把所有的分组数据放到一个元组,前提分组要两个或者两个以上 11 print(re.findall("""(src=)"(https?://.+?.jpg)""", image_str2))
打印结果: [‘https://rpic.douyucdn.cn/live-cover/appCovers/2018/08/22/5376712_20180822144021_small.jpg‘, ‘https://rpic.douyucdn.cn/live-cover/appCovers/2018/08/22/5376712_20180822144021_small.jpg‘] [‘https://rpic.douyucdn.cn/live-cover/appCovers/2018/08/22/5376712_20180822144021_small.jpg‘] [‘https://rpic.douyucdn.cn/live-cover/appCovers/2018/08/22/5376712_20180822144021_small.jpg‘] [(‘src=‘, ‘https://rpic.douyucdn.cn/live-cover/appCovers/2018/08/22/5376712_20180822144021_small.jpg‘)]