在外部图案内匹配内部图案无限次

时间:2010-07-31 15:50:25

标签: regex

说我有以下模式:

INDICATOR\s+([a-z0-9]+)

匹配例如:

INDICATOR AAINDICATOR B3

我需要编辑这个模式,以便它匹配以INDICATOR开头的字符串的任何实例都有一个空格,然后有多个匹配的内部模式,例如。

INDICATOR AA A3 66 B8 34 CD
INDICATOR BG 4D CS
INDICATOR HG

是否可以这样做?

解决方案

感谢Gumbo,我提出了以下适合我要求的正则表达式:

INDICATOR((\s+)?([,-])?(\s+)?([a-z0-9]+))+

1 个答案:

答案 0 :(得分:2)

试试这个:

INDICATOR(\s+([a-z0-9]+))+

这里,重复模式被包裹在一个组中,并使用+进行量化,以允许在组内重复表达。但是你不会得到内部组的每一场比赛而只有最后一场比赛(或者更具体:它取决于你正在使用的实现)。