正則表達式 findall的擴展
阿新 • • 發佈:2018-09-06
ide splay idt 解決辦法 表達 style 正則表達式 dal col
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;">View Code""" 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‘)]
正則表達式 findall的擴展