每天五分鐘—學會使用Python爬蟲正則表達式(附全套爬蟲教程)

每天五分鐘—學會使用Python爬蟲正則表達式(附全套爬蟲教程)

此次課程我們會系統的學習一下python的正則表達式,以及可以根據自己的需求寫出正確的正則表達式。2學習此次課程,需要多久?15-20分鐘,建議每個表達式跟著實踐一下,加深印象3課程內容

Python中正則表達式 在 re 模塊 — Regular expression operations

Python中的re模塊提供與Perl類似的正則表達式匹配操作,但是要注意的是:正則匹配時 表達式和要查詢的字符串可以是 unicode字符串,也可是8-bit 字符串,但是兩種模式不可以混合使用,也就是說 表達式和要查詢的字符串必須一致。

正則表達式特殊字符:

.(點): 默認模式下,.可以匹配除了換行外的所有字符,如果需要匹配換行,可以傳參 re.DOTALL。

每天五分鐘—學會使用Python爬蟲正則表達式(附全套爬蟲教程)

image

運行結果:

每天五分鐘—學會使用Python爬蟲正則表達式(附全套爬蟲教程)

image

^:只匹配字符串的開始位置,可以使用re.MULTILINE(匹配多行),匹配每一行的開始位置。

每天五分鐘—學會使用Python爬蟲正則表達式(附全套爬蟲教程)

image

代碼中每一行的開頭都有ae字符串,所以開啟多行模式後,會匹配兩個結果。

運行結果:

每天五分鐘—學會使用Python爬蟲正則表達式(附全套爬蟲教程)

image

$ : 與^相反,匹配字符串的結束位置,可以使用re.MULTILINE(匹配多行),匹配每一行的結尾位置。

每天五分鐘—學會使用Python爬蟲正則表達式(附全套爬蟲教程)

image

運行結果:

每天五分鐘—學會使用Python爬蟲正則表達式(附全套爬蟲教程)

image

.: 匹配0個或多個的表達式

每天五分鐘—學會使用Python爬蟲正則表達式(附全套爬蟲教程)

image

運行結果:

每天五分鐘—學會使用Python爬蟲正則表達式(附全套爬蟲教程)

image

分析:c*表示,匹配字符"c"0次或者多次,也就是說會匹配 a,ac。

+: 匹配1個或多個的表達式

每天五分鐘—學會使用Python爬蟲正則表達式(附全套爬蟲教程)

image

運行結果:

每天五分鐘—學會使用Python爬蟲正則表達式(附全套爬蟲教程)

image

分析:匹配字符a並且c一次或者多次,所以會匹配ac或者accccc

? : 匹配0次或1次,非貪婪方式

每天五分鐘—學會使用Python爬蟲正則表達式(附全套爬蟲教程)

image

運行結果:

分析:表達式“ac?” 匹配字符a或者ac(?只匹配0次或者1次,比較懶惰,不像上面的+或者*會匹配多次)

.? : 這三個特殊符號上面都講過了,.是匹配任意字符匹配0次或者多次,連在一起使用也就是匹配全文了,加上?號,非貪婪模式匹配,將盡可能少的匹配結果。

每天五分鐘—學會使用Python爬蟲正則表達式(附全套爬蟲教程)

image

匹配結果:

每天五分鐘—學會使用Python爬蟲正則表達式(附全套爬蟲教程)

image

4小結正則匹配的語法是通用的,大家學會這些特殊字符,無論什麼語言都能迅速入門。所以有必要好好學習一下。

檸檬為大家準備了一些python的學習教程分享,希望可以幫助到大家。

每天五分鐘—學會使用Python爬蟲正則表達式(附全套爬蟲教程)

每天五分鐘—學會使用Python爬蟲正則表達式(附全套爬蟲教程)

獲取方式:請大家關注並私信小編關鍵詞:“資料”即可獲取。


分享到:


相關文章: