目錄
一、常用元字元
二、反向字元
三、修飾符
四、優先順序 ^
匹配輸入字串的開始位置。
\將下乙個字元標記為乙個特殊字元、或乙個原義字元、或乙個 向後引用、或乙個八進位制轉義符。例如,'n' 匹配字元 "n"。'\n' 匹配乙個換行符。序列 '\\' 匹配 "\" 而 "\(" 則匹配 "("。
$匹配輸入字串的結束位置
*匹配前面的子表示式零次或多次。例如,zo* 能匹配 "z" 以及 "zoo"。* 等價於
+匹配前面的子表示式一次或多次。例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。+ 等價於 。
?匹配前面的子表示式零次或一次。例如,"do(es)?" 可以匹配 "do" 或 "does" 。? 等價於 。
n 是乙個非負整數。匹配確定的 n 次。例如,'o' 不能匹配 "bob" 中的 'o',但是能匹配 "food" 中的兩個 o。
例如正則 "a" 將a重複匹配3次或者4次 所以供匹配的字元可以是三個"aaa"也可以是四個"aaaa" 正則都可以匹配到
與不同之處就在於匹配的次數將沒有上限,但至少要重複n次 如 正則"a" a至少要重複3次
\w匹配字母或數字或下劃線,等價於 [a-za-z0-9_]
\d匹配數字,相當於[0-9]
\b匹配乙個單詞邊界,即字與空格間的位置
|指明兩項之間的乙個選擇。
.匹配除了換行符以外的任何字元
( )標記乙個子表示式的開始和結束位置
\t匹配乙個製表符
\r匹配乙個回車符
\n匹配乙個換行符。
\f匹配乙個換頁符。
\s匹配所有空白符,包括換行
\s匹配任意不是空白符的字元
\w匹配任意不是字母,數字,下劃線 的字元
\d匹配任意 不是數字的字元
\b匹配不是單詞開頭或結束的位置
[^abc]
匹配除了abc以外的任意字元
iignore - 不區分大小寫
將匹配設定為不區分大小寫,搜尋時不區分大小寫: a 和 a 沒有區別。
gglobal - 全域性匹配
查詢所有的匹配項。
mmore - 多行匹配
使邊界字元 ^ 和 $ 匹配每一行的開頭和結尾,記住是多行,而不是整個字串的開頭和結尾。
s特殊字元圓點 . 中包含換行符 \n
預設情況下的圓點 . 是 匹配除換行符 \n 之外的任何字元,加上 s 修飾符之後, . 中包含換行符 \n。
\轉義符
(), (?:), (?=),
圓括號和方括號
*, +, ?, , ,
限定符^, $, \任何元字元、任何字元
定位點和序列(即:位置和順序)
|替換,"或"操作
字元具有高於替換運算子的優先順序,使得"m|food"匹配"m"或"food"。若要匹配"mood"或"food",請使用括號建立子表示式,從而產生"(m|f)ood"。
正規表示式 正規表示式函式 筆記
筆記直接使用pycharm製作,需要原始檔請私聊。正規表示式函式 1.match 2.search 3.全域性匹配函式 全域性匹配 re.compile 正規表示式 findall 資料 import re string poythonydasadcasa pat2 p.y 懶惰模式執行 較精準 r...
正規表示式筆記
不同的語系編碼的順序不一樣 lang c 0 1 2 3 a b c d z a b c d z lang zh cn 0 1 2 3 4 a a b b c c z z 使用正規表示式時,需要留意環境的語系是什麼,否則會有不同的結果 alnum 英文大小寫字元及數字 0 9 a z a z alp...
正規表示式筆記
d 0 9中的任意乙個數字 w a z,a z,0 9,中的任意乙個,即字母數字下劃線 s 空格,製表符,換頁符等空白字元的其中任意乙個 小數點可以匹配換行符 n 以外的任意乙個字元 匹配某範圍內的任意乙個字元 ab9 匹配 a b 9 中的任意乙個 abc 匹配abc之外的任意乙個字元 a g 匹...