Python 正則表示式模式


除了控制字元 (+ ? . * ^ $ ( ) [ ] { } | \) 之外,所有字元都匹配自身。可以使用反斜槓 (\) 轉義控制字元。

下表列出了 Python 中可用的正則表示式語法:

序號模式及描述
1^
匹配行首。
2$
匹配行尾。
3.
匹配除換行符之外的任何單個字元。使用 m 選項允許它匹配換行符。
4[...]
匹配括號中任何單個字元。
5[^...]
匹配括號中任何單個字元之外的任何單個字元
6re*
匹配前面表示式的 0 次或多次出現。
7re+
匹配前面表示式的 1 次或多次出現。
8re?
匹配前面表示式的 0 次或 1 次出現。
9re{ n}
精確匹配前面表示式 n 次出現。
10re{ n,}
匹配前面表示式 n 次或多次出現。
11re{ n, m}
匹配前面表示式至少 n 次,最多 m 次出現。
12a| b
匹配 a 或 b。
13(re)
分組正則表示式並記住匹配的文字。
14(?imx)
臨時啟用正則表示式中的 i、m 或 x 選項。如果在括號內,則僅影響該區域。
15(?-imx)
臨時停用正則表示式中的 i、m 或 x 選項。如果在括號內,則僅影響該區域。
16(?: re)
分組正則表示式而不記住匹配的文字。
17(?imx: re)
臨時啟用括號內的 i、m 或 x 選項。
18(?-imx: re)
臨時停用括號內的 i、m 或 x 選項。
19(?#...)
註釋。
20(?= re)
使用模式指定位置。沒有範圍。
21(?! re)
使用模式否定指定位置。沒有範圍。
22(?> re)
匹配獨立模式,不回溯。
23\w
匹配單詞字元。
24\W
匹配非單詞字元。
25\s
匹配空格。等效於 [\t\n\r\f]。
26\S
匹配非空格。
27\d
匹配數字。等效於 [0-9]。
28\D
匹配非數字。
29\A
匹配字串開頭。
30\Z
匹配字串結尾。如果存在換行符,則匹配換行符之前。
31\z
匹配字串結尾。
32\G
匹配上次匹配結束的位置。
33\b
在括號外匹配單詞邊界。在括號內匹配退格符 (0x08)。
34\B
匹配非單詞邊界。
35\n, \t, etc.
匹配換行符、回車符、製表符等。
36\1...\9
匹配第 n 個分組子表示式。
37\10
如果第 n 個分組子表示式已匹配,則匹配它。否則引用字元程式碼的八進位制表示。

更新於:2020年1月30日

445 次瀏覽

啟動您的職業生涯

完成課程後獲得認證

開始學習
廣告