標籤:www. 優先 port 取消 分割 sub color 迭代器 模組
#正則元字元:^ $ . * + ? [] {} () \ |
#()分組
import reprint(re.search(‘(?P<name>[a-z]+)(?P<age>\d+)‘,"asd123fgh456jkl789").group(‘name‘))
re.search() #懶惰模式 只返回第一個匹配的資料,再調用group()方法得到匹配的字串
re.findall() #貪婪模式,但會所有滿足匹配條件的結果,放到列表中。
re.match() #從開始位置匹配,懶惰模式
re.split() #字串分割為列表
re.sub() #替換
re.subn() #替換
re.finditer() #匹配到的資料放在迭代器對象,適用於大批量資料的匹配,
print(re.split(‘[ |]‘,‘hello iam|matt‘)) #將字串按空格或管道符分割
print(re.split(‘[ab]‘,‘asdabcd‘)) #按a或b分割
print(re.sub(‘a‘,‘A‘,‘aaaaaa‘)) #a替換為A
print(re.sub(‘a‘,‘A‘,‘aaaaaa‘,5)) #a替換為A,替換5次
print(re.subn(‘a‘,‘A‘,‘aaaaaa‘)) #並返回匹配次數
rule = re.compile(‘\d‘) #編譯規則
print(rule.findall("12df34gh5h"))
print(re.findall(‘www\.(baidu|163|sina)\.com‘,‘d3d3d3f45g5gwww.baidu.com2ftg5hth6he‘)) #優先只返回分組中資料
print(re.findall(‘www\.(?:baidu|163|sina)\.com‘,‘d3d3d3f45g5gwww.baidu.com2ftg5hth6he‘)) #取消優先順序,返回所有匹配資料
python-re模組