正規表示式是用來處理字串的,可以用來對字串進行檢索、替換、匹配等
感覺單從理論上說正規表示式太過於抽象,直接舉乙個例子可能更方便理解。
這裡只記錄通用匹配,因為暫時感覺實用性更高,如果以後要用到其它細節,再倒過頭來學吧,畢竟,咳咳,腦子記不住這麼多東西。
首先python要引入re庫,關於怎樣引入之前有過記錄。
首先說一下三個常用的匹配規則,
「.」 :匹配任意字元,回車除外,加re.s即可匹配回車
「*」 :匹配0個或多個表示式
「?」:匹配乙個或者多個前面的正規表示式定義片段,非貪婪方式
import re
#要處理的文字
html = '''
經典電影列表
#search 方法,返回第乙個匹配到的結果
result =re.search('(.*?)',html)
if result:
#注意,這裡第乙個(.*?)是從1開始
#大家可以猜一下結果,猜中了你也就大概懂了
print(result.group(1),result.group(2))
#findall()方法,返回所有符合結果的匹配
results =re.search('(.*?)',html)
print(results)
#可以用compile()方法將正則字串編譯成正規表示式物件,以便以後使用
pattern = re.compile('(.*?)',re.s)
result = re.search(pattern,html)
print(result)
#sub()函式可以替換文字中內容
html =re.sub(|','',html)
print(html)
1.關於貪婪和不貪婪問題:
.是貪婪匹配,會匹配更多的字元,比如』abc 123』
如果是貪婪的話ab(.)(\d+)會匹配到123
而不是貪婪只匹配3
下面一節舉乙個詳細的例子,對以前學的進行一下總結。
Python 爬蟲學習4
任務 爬取58頁面中的正常商品,每個商品詳情頁中的類目 標題 發帖時間 成色 區域 瀏覽量資訊 注意 多開反爬取 看是個人還是商家 url中的0和1 詳情頁中的標題 待改進,這是第二頁的,第一頁的每個詳情頁的鏈結爬不了 問題出在第一頁趴下來的關於詳情頁鏈結有問題,第一頁不同於後面頁,後面頁也有不同的...
Python爬蟲學習之路(1) 前端
最近一直想找一種督促自己學習的方法,感覺似乎寫部落格是乙個不錯的選擇。所以這些部落格的主要目的當然是讓自己靜下心來鞏固複習,當然如果能對別人有所幫助,那就再好不過了。我是在win10 pycharm上編寫python的,至於一些庫,使用的時候再匯入吧。學習爬蟲之前一定要對前端知識有所了解,當然要求不...
Python學習之路 爬蟲篇 2
為什麼要學習requests,而不是urllib 1 requests的底層實現就是urllib 2 requests在python2和python3通 法完全 樣 3 requests簡單易 4 requests能夠 動幫助我們解壓 gzip壓縮的 內容 作 傳送 絡請求,返回相應資料 中 檔ap...