python正則表達式

  • findall的使用
#findall有兩種用法:
findall(string[, pos[, endpos]])
re.findall(pattern, string[, flags])
#示例
import re  
a = 'abc123abv23456'  
b = re.findall(r'23(a)?',a)  
print b  
b = re.findall(r'23(?:a)?',a)  
print b 
#輸出結果:
'a', '']  
['23a', '23']  
#findall若是使用了分組,則輸出的內容將是分組中的內容而非find到的結果,爲了獲得find到的結果,要加上問號來啓用「不捕捉模式」
  •  match的使用
re.match(pattern, string[, flags])
#判斷 pattern 是否在字符串開頭位置匹配。對於 RegexObject,有:
match(string[, pos[, endpos]])
#match() 函數只在字符串的開始位置嘗試匹配正則表達式,也就是隻報告從位置 0 開始的匹配狀況,而 search() 函數是掃描整個字符串來查找匹配。若是想要搜索整個字符串來尋找匹配,應當用 search()。
相關文章
相關標籤/搜索