python日記——網絡爬蟲之Re庫
- 正則表達式
1、概念:
正則表達式,regular expression,是用來簡潔表達一組字符串的表達式
2、優勢:
一行勝千言,無窮字符串組的簡潔表達
3、應用:
最主要應用在字符串匹配中
4、語法:
正則表達式語法由字符和操作符構成
(1)常用操作符:
(2)實例:
(3)經典正則表達式:
- Re庫的基本使用
1、re庫是Python的標準庫,主要用於字符串匹配
2、re庫採用raw string類型(原生字符串類型)表示正則表達式,表示爲:r’text’,例如: r’[1‐9]\d{5}’
3、re庫主要函數:
re.search/match/findall/finditer(pattern, string, flags=0)
re.split(pattern, string, maxsplit=0, flags=0)
re.sub(pattern, repl, string, count=0, flags=0)
參數詳解:
∙ count : 匹配的最大替換次數
∙ repl : 替換匹配字符串的字符串
∙ maxsplit: 最大分割數,剩餘部分作爲最後一個元素輸出
∙ pattern : 正則表達式的字符串或原生字符串表示
∙ string : 待匹配字符串
∙ flags : 正則表達式使用時的控制標記
4、re庫的一種等價用法
將正則表達式的字符串形式編譯成正則表達式對象,功能函數與函數式用法一致,只是少了 pattern參數
5、Match對象
(1)Match對象是一次匹配的結果,包含匹配的很多信息
(2)Match對象的屬性:
(3)Match對象的方法:
6、re庫的貪婪匹配和最小匹配
(1)re庫默認採用貪婪匹配,即輸出匹配最長的子串
(2)最小匹配:
只要長度輸出可能不同的,都可以通過在操作符後增加?變成最小匹配
本文部分內容參考於北京理工大學嵩天老師相關課程