Python正則表示式
正則表示式在Python中通過import re模組使用,最早在python 1.5版本已經加入.下文主要通過例項介紹正則表示式用法.
操作方法
(01)正則表示式常用的元字元如下所示:.:匹配任何一個字元;^:匹配除去所列首個字元外的所有字元;$:匹配字串的尾部字元
(02)*:表示匹配0個或者多個字元+:表示匹配1個或者多個字元?:表示匹配0個或者1個字元,如圖中用例所示:
(03)*?,+?,??:匹配滿足要求的最短字串;{m}:匹配m個相同的字元;{m,n}:匹配m到n個相同的字元;
(04){m,n}?:匹配m到n個相同的字元(非貪婪演算法,匹配最短字元);:轉義字元,如果字串不用r限定,遇到特殊字元需要進行轉義;[]:滿足匹配字串的集合;|:如A|B,或的關係,滿足A或者B,表示式都為真;
(05)(?=...):如果字串後面的字元和...相匹配,則整個表示式返回真,否則失敗;(?!...):和前者相反,如果字串後面的字元和...不匹配,則整個表示式返回真
(06)(?<=...):如果在字串找到和()後面相同的字元,繼續回退字元看是否和<=後面的字元是否一樣,如是則表示式返回真.(?!=...):如果在字串找到和()後面相同的字元,繼續回退字元看是否和<=後面的字元是否一樣,如是則表示式返回失敗.
(07)number:反斜槓後面加資料,匹配number個字串個數.A:匹配字串開始;b:匹配空格字元;B:匹配除了空格字元以外的字元;
(08)d:匹配任意數字;D:匹配除了數字以外的字元;w:匹配字元和下劃線;W:匹配除了字元和下劃線以外的字元.
特別提示
反斜槓後面的字元大小寫含義相反
轉義字元表示符號需要用r""或者""