Python 正则表达式比预期匹配更多

Python 正则表达式比预期匹配更多,python,regex,pattern-matching,Python,Regex,Pattern Matching,给出了以下python脚本: text = '<?xml version="1.24" encoding="utf-8">' mu = (".??[?]?[?]", "....") for item in mu: print item,":",re.search(item, text).group() 有人能解释为什么正则表达式的第一次命中返回的原因与foobar中的o*?bar匹配。即使量词是非贪婪的,正则表达式也会尝试以所有可能的方式匹配第一个字符,然后再继续下一个字符

给出了以下python脚本:

text = '<?xml version="1.24" encoding="utf-8">'
mu = (".??[?]?[?]", "....")
for item in mu:
    print item,":",re.search(item, text).group()
有人能解释为什么正则表达式的第一次命中返回的原因与foobar中的o*?bar匹配。即使量词是非贪婪的,正则表达式也会尝试以所有可能的方式匹配第一个字符,然后再继续下一个字符

第一个是什么。??匹配空字符串,但当正则表达式引擎回溯到它时,它匹配,原因与o*?bar匹配foobar中的oobar相同。即使量词是非贪婪的,正则表达式也会尝试以所有可能的方式匹配第一个字符,然后再继续下一个字符


第一个是什么。??匹配空字符串,但当正则表达式引擎回溯到它时,它匹配regex greediness只影响回溯;这并不意味着正则表达式引擎将跳过早期的潜在匹配点-正则表达式总是获取第一个可能的匹配。在这种情况下,这意味着Regex greediness只影响回溯;这并不意味着正则表达式引擎将跳过早期的潜在匹配点-正则表达式总是获取第一个可能的匹配。在这种情况下,这意味着