要捕捉每个组的所有文本,可以使用正则表达式的re.findall()
函数来返回所有匹配的结果。下面是一个代码示例:
import re
pattern = r'(\w+)\s+(\w+)' # 定义正则表达式模式,匹配两个单词之间的空格
text = 'Hello World, Python is awesome!'
matches = re.findall(pattern, text) # 使用 re.findall() 函数找到所有匹配的结果
for match in matches:
print('Full match:', match) # 打印完整匹配项
print('Group 1:', match[0]) # 打印第一个组的文本
print('Group 2:', match[1]) # 打印第二个组的文本
输出结果:
Full match: ('Hello', 'World')
Group 1: Hello
Group 2: World
在上面的示例中,我们定义了一个正则表达式模式(\w+)\s+(\w+)
,该模式匹配两个连续的单词,并用一个或多个空格分隔它们。然后,我们使用re.findall()
函数在文本字符串中找到所有匹配的结果,并将结果存储在matches
变量中。最后,我们使用一个循环来遍历每个匹配项,并打印出完整匹配项以及每个组的文本。