Python 正則表示式模式
除了控制字元 (+ ? . * ^ $ ( ) [ ] { } | \) 之外,所有字元都匹配自身。可以使用反斜槓 (\) 轉義控制字元。
下表列出了 Python 中可用的正則表示式語法:
序號 | 模式及描述 |
---|---|
1 | ^ 匹配行首。 |
2 | $ 匹配行尾。 |
3 | . 匹配除換行符之外的任何單個字元。使用 m 選項允許它匹配換行符。 |
4 | [...] 匹配括號中任何單個字元。 |
5 | [^...] 匹配括號中任何單個字元之外的任何單個字元 |
6 | re* 匹配前面表示式的 0 次或多次出現。 |
7 | re+ 匹配前面表示式的 1 次或多次出現。 |
8 | re? 匹配前面表示式的 0 次或 1 次出現。 |
9 | re{ n} 精確匹配前面表示式 n 次出現。 |
10 | re{ n,} 匹配前面表示式 n 次或多次出現。 |
11 | re{ n, m} 匹配前面表示式至少 n 次,最多 m 次出現。 |
12 | a| 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 個分組子表示式已匹配,則匹配它。否則引用字元程式碼的八進位制表示。 |
廣告