正規表示式使用單個字串描述匹配符合某個規則的字串
它是對字串操作的一種邏輯公式
它的應用場景:處理文字和資料
匹配過程:依次拿出表示式和文字中字元比較,如果每個字串都能匹配,則成功
講到python的正規表示式就不能不提到re模組,引用re模組的方法也非常簡單,直接import re 即可。
使用re模組匹配曾則表示式的流程
生成pattern物件:呼叫re.compile(…)函式,只能通過這個才能生成pattern物件。
進行匹配:pattern.match(…)函式,將pattern物件與具體的字串進行匹配。
得出結果。
注:在第一步編寫正規表示式的時候,通常習慣在正規表示式之前加乙個r,例如:re.complie(r』\d+』),其中這個r表示原生字串的意思,表示不轉義,即『\『就是代表『\『。|:匹配左右任意乙個表示式(類似於或)。
eg:0-100表示為 [1-9]?\d$|100
2.(ab):括號中表示式作為乙個分組
eg:[\w]@(163|126).com:匹配163或者126
3.\<>:匹配標記語言,舉個例子
eg:』<([\w]+>)[\w]《/ \1』其可以匹配出python,其中 \1:可以簡單理解成匹配分組內容([\w]+>):即』book>』匹配到()裡面包含的東西
4.(?p):給分組起乙個別名
5.(?p:):匹配名為name的分組對應的字串
1.search(pattern ,string ,flags = 0):在乙個字串中查詢匹配指定的字串與find類似(固定特定字串)
eg:str1 = 『imooc vedionum = 1000』 ; info = re.search(r』\d+』,str1)
2.findall(pattern ,string ,flags = 0):找到匹配,返回所有匹配部分的列表,與find方法不同。
3.sub(pattern ,repl ,string ,count = 0 , flags = 0):將字串匹配正規表示式的部分替換為其他值。其中repl:既可以是字串,也可以是函式名(返回值為字串)。就第二種情況舉個例子
eg:def add1(match):
val = match.group()
num = int(val) + 1
return str(num)
4.split(pattern ,string ,maxsplit = 0 ,flags = 0):根據匹配分割字串,返回分割字串組成的列表。
正規表示式彙總
1 校驗密碼強度 密碼的強度必須是包含大小寫字母和數字的組合,不能使用特殊字元,長度在8 10之間。d a z a z 2.校驗中文 字串僅能是中文。u4e00 u9fa5 3.由數字 26個英文本母或下劃線組成的字串 w 4.校驗e mail 位址 同密碼一樣,下面是e mail位址合規性的正則檢...
正規表示式彙總
一 校驗數字的表示式 數字 0 9 n位的數字 d 至少n位的數字 d m n位的數字 d 零和非零開頭的數字 0 1 9 0 9 非零開頭的最多帶兩位小數的數字 1 9 0 9 0 9 帶1 2位小數的正數或負數 d d 正數 負數 和小數 d d 有兩位小數的正實數 0 9 0 9 有1 3位小...
正規表示式彙總
驗證數字的正規表示式集 驗證數字 0 9 驗證n位的數字 d 驗證至少n位數字 d 驗證m n位的數字 d 驗證零和非零開頭的數字 0 1 9 0 9 驗證有兩位小數的正實數 0 9 0 9 驗證有1 3位小數的正實數 0 9 0 9 驗證非零的正整數 1 9 0 9 驗證非零的負整數 1 9 0 ...