需要了解以下正则表达式输出



我是python正则表达式的新手,正在浏览python正则表达式文档。我无法理解下面的代码输出 - "c"如何被包含在组中。下面是表达式:

m = re.match("([abc])+", "abc")
print(m.groups())
print(m.group(1))

输出为:

('c',)
c

它与解析正则表达式的贪婪方法有关,总结一下:

重复的捕获组将仅捕获最后一个迭代。在重复组周围放置一个捕获组以捕获所有迭代,或者如果您对数据不感兴趣,请改用非捕获组

见 https://regex101.com/r/ffBSOq/1

最新更新