我学习了Python,遇到了一些有趣的事情:我尝试编写lambda-function,它将搜索字符串中的模式,如果匹配则返回结果,否则返回空字符串。我已经写了:
>>> b = lambda x: re.search("_\w+_", x).group(0) if re.search("_\w+_", x) is not None else ''如果我的字符串</em
= ptn.matcher("bbaac"); System.out.println(mtch.group());输出- aa
我知道这是一个非常简单的问题,但我仍然对*和+的行为感到困惑(两者都是贪婪的量词)。请让我知道为什么在第一种情况下输出不打印任何东西,即a*是贪婪的,它应该返回aa作为匹配。