Python里数量词默认是贪婪的(在少数语言里也可能是默认非贪婪),总是尝试匹配尽可能多的字符;
非贪婪则相反,总是尝试匹配尽可能少的字符。
在”*”,”?”,”+”,”{m,n}”后面加上?,使贪婪变成非贪婪。
举例:
ret = re.match(r'#.*?#', '#吾之初心#永世不忘#')
print(ret.group())
解析:?后面的的数据让我自己(这里指的是?后面的#)匹配 ,从而 ?将python正则表达式默认的贪婪改成了非贪婪
Python里数量词默认是贪婪的(在少数语言里也可能是默认非贪婪),总是尝试匹配尽可能多的字符;
非贪婪则相反,总是尝试匹配尽可能少的字符。
在”*”,”?”,”+”,”{m,n}”后面加上?,使贪婪变成非贪婪。
举例:
ret = re.match(r'#.*?#', '#吾之初心#永世不忘#')
print(ret.group())
解析:?后面的的数据让我自己(这里指的是?后面的#)匹配 ,从而 ?将python正则表达式默认的贪婪改成了非贪婪