python模塊--re
阿新 • • 發佈:2018-04-13
pat 大小寫 urg 填充 dex 包含 upd findall target
正則表達式匹配規則
方法 | 返回 | 參數 | 說明 |
.compile() | regex | 將正則表達式模式編譯成正則表達式對象 | |
pattern | 正則表達式 | ||
flags=0 | 調整表達式的行為, 可以使用 or (|) 組合使用 | ||
.A | flags= | 讓 \w , \W , \b , \B , \d , \D , \s and \S 執行純 ASCII 匹配,而不是全部Unicode匹配(僅在Unicode模式下有意義, 並在byte模式下被忽略) |
|
.ASCII | |||
.DEBUG | flags= | 顯示關於編譯表達式的調試信息 | |
.I | flags= | 執行不區分大小寫的匹配 | |
.IGNORECASE | |||
.L | flags= | 不建議使用??? | |
.LOCALE | |||
.M | flags= | 使 ^ $ 可以匹配每一行的開頭和結尾, 而不僅僅匹配整個字符串的開頭和結尾 (^匹配的是緊跟換行符之後的位置. $匹配的是緊跟換行符之前的位置) | |
.MULTILINE | |||
.S | flags= | 讓 . 也可以匹配到換行符 (默認 . 智能匹配除換行符之外的字符) | |
.DOTALL | |||
.X | flags= | 更友好的編輯模式, 會忽略正則表達式中的空白符以及未轉義的#號及其同一行後面的內容, 這樣就可以多行編輯正則表達式, 更有利於閱讀 | |
.VERBOSE | |||
.search() |
Match None | 返回第一次匹配到的結果, 無匹配則返回 None | |
pattern | 正則表達式 | ||
string | 要匹配的字符串 | ||
flags=0 | 調用表達式的行為 | ||
.match() | .search() | 只能從字符串的開頭位置匹配 | |
.fullmatch() | .search() | 正則表達式匹配整個字符串 3.4 | |
.split() | list | 使用正則表達式分割字符串, 返回分割後的字符串列表(若含有捕獲組則結果中也會包括捕獲內容) | |
pattern | 正則表達式 | ||
string | 要匹配的字符串 | ||
maxsplit=0 | 最大分割次數 | ||
flags=0 | 調用表達式的行為 | ||
.findall() | list | .search() | 以列表返回所有匹配結果 |
.finditer() | iter | .search() | 返回一個包含所有匹配結果的叠代器 |
.sub() | str | 將匹配到的字符串替換為repl | |
pattern | 正則表達式 | ||
repl | str, fun(match): return str | ||
string | 要匹配的字符串 | ||
count=0 | 允許替換的最大次數 | ||
flags=0 | 調用表達式的行為 | ||
.subn() | tuple | .sub() | 返回 (替換後的字符串, 替換次數) |
.escape() | str | string | 轉義除ASCII字母, 數字和 ‘_‘ 之外的所有字符 (‘_‘ 3.3 之後才不再轉義) |
.purge() | 清除正則表達式緩存 | ||
.error() | ??? | ||
已編譯的正則表達式對象的方法和屬性 | |||
.search() | Match | string[, pos[, endpos]] | |
.match() | Match | string[, pos[, endpos]] | |
.fullmatch() | Match | string[, pos[, endpos]] | |
.split() | list | string, maxsplit=0 | |
.findall() | list | string[, pos[, endpos]] | |
.finditer() | iter | string[, pos[, endpos]] | |
.sub() | str | repl, string, count=0 | |
.subn() | tuple | repl, string, count=0 | |
.flags | flags | 正則表達式匹配標誌 | |
.groups | int | 模式中的捕獲組數量 | |
.groupindex | dict | 將 (?P<id>) 定義的任何符號組名稱映射到組編號的字典 | |
.pattern | str | 編譯RE對象的模式字符串 | |
Match對象的方法 | |||
.expand() | |||
.group() | str | 0 | 默認, 返回匹配結果 |
str | 1 | 返回第一個捕獲組捕獲的內容 | |
Tuple | 1, 2 | 返回兩個捕獲組內容組成的Tuple | |
.groups() | Tuple | 以元組的方式返回全部捕獲組的內容 | |
default=None | 若捕獲組內容為空, 則使用此值填充 | ||
.groupdict() | dict | default=None | 設有name的捕獲組, 返回成一個字典 |
.start() | int | [group] | 匹配開始的位置 |
.end() | int | [group] | 匹配結束的位置 |
.span() | Tuple | [group] | (匹配開始的位置, 匹配結束的未至) |
.pos | 傳遞的pos值 | ||
.endpos | 傳遞的endpos值 | ||
.lastindex | 最後一個捕獲組的整數索引 | ||
.lastgroup | |||
.re | |||
.string | 要匹配的字符串 |
python模塊--re