正则表达式六---贪婪模式
2018-10-21 本文已影响0人
IT的咸鱼
- Python里数量词默认是贪婪的(在少数语言里也可能是默认非贪婪),总是尝试匹配尽可能多的字符;
非贪婪则相反,总是尝试匹配尽可能少的字符。
在"*" , "?" , "+" , "{m,n}"后面加上?,使贪婪变成非贪婪。
*? | 重复任意次,但尽可能少重复 |
---|---|
+? | 重复1次或更多次,但尽可能少重复 |
?? | 重复0次或1次,但尽可能少重复 |
re.match(r"aa(\d+)","aa2343ddd").group(1)
'2343'
re.match(r"aa(\d+?)","aa2343ddd").group(1)
'2'
re.match(r"aa(\d*?)","aa2343ddd").group(1)
'2343'
re.match(r"aa(\d??)","aa2343ddd").group(1)
'2'