正则表达式捕获Kleene Plus闭包中的所有组

时间:2013-05-01 03:35:22

标签: python regex

我遇到了一个问题,我需要捕获Kleene plus闭包中的所有组。我尝试了另一个场景,并得到了相同的行为。这是一个例子

(?:([A-Za-z]+) )+

表示字符串

This is a sentence.

我总是以小组而不是所有可能的小组取回最后一场比赛。在上面的例子中,组(1)是a并且没有其他组。我希望group(1)为This group(2)为is和group(3)a。对于上述情况,我使用的是search

修改

我没有使用我关心的确切案例,这是正确的。

\{([ A-Z]+)(?:\|([ A-Z]+))+\}

NBAR -> { AP NBAR | NBAR PP | VPG | N | N N }

在这种情况下,findall不起作用。使用this online tool我得到的[(u' AP NBAR ', u' N N ')]groups()给我的内容非常相似。

1 个答案:

答案 0 :(得分:2)

re.findall("[A-Za-z]+", sentence)