re模組中match物件的方法和屬性
阿新 • • 發佈:2019-01-02
屬性和方法 | 說 明 |
Pos | 搜尋的開始位置 |
Endpos | 搜尋的結束位置 |
String | 搜尋的字串 |
Re | 當前使用的正則表示式的物件 |
Lastindex | 最後匹配的組索引 |
Lastgroup | 最後匹配的組名 |
group(index=0) | 某個分組的匹配結果。如果index等於0,便是匹配整個正則表示式 |
groups() | 所有分組的匹配結果,每個分組的結果組成一個列表返回 |
Groupdict() | 返回組名作為key,每個分組的匹配結果座位value的字典 |
start([group]) | 獲取組的開始位置 |
end([group]) | 獲取組的結束位置 |
span([group]) | 獲取組的開始和結束位置 |
expand(template) | 使用組的匹配結果來替換模板template中的內容,並把替換後的字串返回 |
分組解析例項:
import re p = re.compile(r"(abc)\1") m = p.match("abcabcabc") print m.group(0) print m.group(1) print m.group() p = re.compile(r"(?P<one>abc)(?P=one)") m = p.search("abcabcabc") print m.group(0) print m.group("one") print m.groupdict().keys() print m.groupdict().values() print m.re.pattern 第二行:定義了一個分組"(abc)",在後面使用"\1"再次呼叫該分組。即compile()返回1個包含2個分組的正則表示式物件p. 第三行:p.match()對字串"abcabcabc"進行搜尋,返回一個match物件m 第四行:呼叫match物件的group(0)方法,將匹配整個表示式,輸出結果:abcabc 第五行:呼叫match物件的group(1)方法,返回第一次匹配成功的結果,輸出結果為:abc 第六行:預設情況下,返回分組0的結果,輸出結果:abcabc 第八行:給分組命令,"?P<one>"中的"one"表示分組的名稱。"(?P=one)"呼叫分組"one",相當於"\1" 第十行:輸出分組"one"的結果,輸出結果:abc 第十一行:獲取正則表示式中分組的名稱,輸出結果為:['one'] 第十二行:獲取正則表示式中分組的內容,輸出結果為:['abc'] 第十三行:獲取當前使用的正則表示式,輸出結果:(?P<one>abc)(?P=one)
轉:http://xukaizijian.blog.163.com/blog/static/170433119201111213111562/