Python';s.group()只返回第一个匹配项
我运行了以下代码,只得到了第一个“')”作为匹配项。有人能帮我解释一下为什么普通的“贪婪的”)“没有被退回吗Python';s.group()只返回第一个匹配项,python,regex,Python,Regex,我运行了以下代码,只得到了第一个“')”作为匹配项。有人能帮我解释一下为什么普通的“贪婪的”)“没有被退回吗 r=re.compile('\)') var=r.search('- hi- ))there') print var.group() 你的正则表达式并不贪婪。事实上,它设置为只匹配一个字符。如果希望它也匹配重复,请添加一个+: >>> r=re.compile('\)+') >>> var=r.search('- hi- ))there') >
r=re.compile('\)')
var=r.search('- hi- ))there')
print var.group()
你的正则表达式并不贪婪。事实上,它设置为只匹配一个字符。如果希望它也匹配重复,请添加一个
+
:
>>> r=re.compile('\)+')
>>> var=r.search('- hi- ))there')
>>> print var.group()
))
你的正则表达式并不贪婪。事实上,它设置为只匹配一个字符。如果希望它也匹配重复,请添加一个
+
:
>>> r=re.compile('\)+')
>>> var=r.search('- hi- ))there')
>>> print var.group()
))
将只返回第一场比赛
要查找所有匹配项,请使用:
如果要在一个匹配中找到两个大括号,请使用:
r=re.compile('\)+')
+
与一个或多个对象匹配。将只返回第一个匹配
要查找所有匹配项,请使用:
如果要在一个匹配中找到两个大括号,请使用:
r=re.compile('\)+')
+
与一个或多个对象匹配。可能需要\)+
?可能需要\)+
?感谢您的澄清。findall()似乎对我有用。谢谢你的澄清。findall()似乎对我有用。