使用正则表达式匹配关键字后的重复组

时间:2017-01-25 00:03:13

标签: regex vb.net repeat

VB2010使用正则表达式我似乎无法让这个看似简单的正则表达式工作。我首先查找一个包含关键字TRIPS的行,其中包含我的数据,然后从该行我想要提取由alpha代码和数字组成的重复数据组。

MODES       1       0       0  
OVERH   X  28   H   0   Z 198  
TRIPS   X  23   D   1   Z 198  
ITEMSQ      1       0       0  
COSTU   P  16   E 180  
CALLS       0       0 

我有

^TRIPS   (?<grp>[A-Z]\s{1,4}\d{1,3}) 

这给了我一场比赛和第一组“X 23”。所以我通过允许它最多匹配4组来扩展它。

^TRIPS   (?<grp>[A-Z]\s{1,4}\d{1,3}){0,4}

但是我只与一个小组进行一场比赛。

1 个答案:

答案 0 :(得分:1)

您不允许组之间有空格。你需要做这样的事情:

^TRIPS   ((?<grp>[A-Z]\s{1,4}\d{1,3})\s+){0,4}