標籤:com pos div 一個 參數說明 string 方法 style 正則表達
1.re.match函數
re.match 嘗試從字串的起始位置匹配一個模式,如果不是起始位置匹配成功的話,match()就返回none。
(1)函數文法:
re.match(pattern, string, flags=0)
函數參數說明:
pattern 匹配的Regex
string 要匹配的字串
flgs 標誌位,用於控制Regex的匹配方式
我們可以使用group(num) 或 groups() 匹配對象函數來擷取匹配運算式。
group(num=0) 擷取匹配結果的各個分組的字串,group() 可以一次輸入多個組號,此時返回一個包含那些組所對應值的元組。
groups() 返回一個包含所有分組字串的元組。
注意:如果未匹配成功,match()傳回值為None,此時再使用group()、groups() 方法會報錯。
應該先擷取匹配對象,然後判斷匹配對象是否非空,當非空時在使用group()、groups() 方法擷取匹配結果。見執行個體2
(2)執行個體 例1 import re
print(re.match(‘How‘, ‘How are you‘).span()) # 在起始位置匹配
print(re.match(‘are‘, ‘How are you‘)) # 不在起始位置匹配
以上輸出結果為:
(0, 3) None
例2 import re content = ‘577 zeke‘ result = re.match(r‘[a-z]\d‘ , content‘) if result: print result.group() else: print ‘No match!‘
以上執行結果如下:
No match!
2.pattern.match方法(1) 函數文法
pattern.match( string, pos=0, endpos=len(string))
函數作用:
這個方法將在字串string的pos位置開始 嘗試匹配pattern(pattern就是通過 re.compile()方法編譯後返回的對象),如 果pattern匹配成功,無論是否達到結束位 置endpos,都會返回一個匹配成功後的 Match對象;
如果匹配不成功,或者 pattern未匹配結束就達到endpos,則返回 None。
函數參數說明:
string:被匹配的字串
pos:匹配的起始位置,可選,預設為0
endpos:匹配的結束位置,可選,預設為 len(string)
3. re.match和pattern.match區別
re.match方法與pattern.match()方法 區別在於,它不能指定匹配的區 間pos和endpos兩個參數
pythonRegex(3)--match方法