正規表達式的介紹
正規表達式:正規表達式是對字元串(包括普通字元(例如,a 到 z 之間的字母)和特殊字元(稱為“元字元”))操作的一種邏輯公式,就是用事先定義好的一些特定字元、及這些特定字元的組合,構成一種規則,這個“規則字元串”用來表達對字元串的一種過濾邏輯。
主要使用的方法
re正規表達式通常使用match的方法
re.match(pattern,str) #pattern為自定義的規則,str是要檢驗的字元串
如果re.match()傳回的結果不為None,則可以通過group方法對其進行資料提取
正規表達式用法介紹
單字元比對規則
· 比對任意一個字元(除了\n)
[] 比對[]中列舉的字元
\d 比對數字,0-9
\D 比對非數字,除了0-0以外的字元
\s 比對空白字元(空格、\tab這些)
\S 比對非空白字元
\w 比對單詞字元(a-z、A-Z、0-9、_)
\W 比對非單詞字元
注意:在自定義規則的時候(pattern中),為了避免轉義字元減少"\",我們可以使用r原始字元串,能夠很好地保護原字元串
例如:pattern = r"\\str"
表示數量的規則
* 比對前一個字元出現0次或者無限次
+ 比對前一個字元出現1次或者無限次,直到出現一次
? 比對前一個字元出現1次或者0次
{m} 比對前一個字元出現m次
{m,} 比對前一個字元至少出現m次
{m,n} 比對前一個字元出現m到n次
表示邊界的規則
^ 比對字元串開頭
$ 比對字元串結尾
\b 比對一個單詞的邊界
\B 比對非單詞邊界
表示比對分組
| 比對左右任意一個表達式
(ab) 将括号中的字元作為一個分組
\num 引用分組num比對到的字元串
(?P<name>) 分組起别名
(?P=name) 引用别名為name分組比對到的字元串