2017-01-25 4 views
1

VB2010 Использование регулярного выражения Я не могу заставить это, казалось бы, простое регулярное выражение работать. Сначала я ищу строку с ключевым словом TRIPS, у которого есть мои данные, а затем из этой строки я хочу извлечь повторяющиеся группы данных, составленные из альфа-кода, а затем числа.Повторить несколько повторений после ключевого слова с использованием regex

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

Вы не допускаете пробелов между группами. Вам нужно сделать что-то вроде этого:

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

Какой я манекен. Позволь мне дать это выстрел. – sinDizzy

+0

Это сработало. Спасибо за помощь. – sinDizzy