Python正则表达式在组中匹配

时间:2017-07-28 17:15:46

标签: regex python-3.x

我正在尝试将以下字符串分为两组,如下所示:

groups(1) = "Hello1 Hello2 Hello3 Hello4"
groups(2) = "Bye1 Bye2 Bye3 Bye4"

我尝试使用以下代码执行此操作。但是,两个组都不包含所有想要的单词。

import re


string = "Hello1 Hello2 Hello3 Hello4 Bye1 Bye2 Bye3 Bye4"
pattern = r'(Hello[0-9])+\w(Bye[0-9])+'
result = re.search(pattern, string)
groups = result.group
print("Group 1: {}\nGroup 2: {}".format(groups(1), groups(2)))

1 个答案:

答案 0 :(得分:0)

这似乎正在完成这项工作,尽管与我最初的帖子中使用的方法不同。

import re


string = "Hello1 Hello2 Hello3 Hello4 Bye1 Bye2 Bye3 Bye4"
patterns = [r'Hello[0-9]', r'Bye[0-9]']
results = [re.findall(patterns[idx], string) for idx in range(len(patterns))]
print("Results:", results)