Я пытаюсь разобрать входную строку с помощью регулярного выражения. У меня проблема при попытке захвата повторяющейся группы. Кажется, я всегда соответствую последнему экземпляру группы. Я пытался использовать Reluctant (не жадные) квантификаторы, но мне, кажется, что-то не хватает. Может кто-нибудь помочь?
Попытка регулярного выражения:
(OS)\\s((\\w{3})(([A-Za-z0-9]{2})|(\\w{3})(\\w{3}))\\/{0,1}){1,5}?\\r
(OS)\\s((\\w{3}?)(([A-Za-z0-9]{2}?)|(\\w{3}?)(\\w{3}?))\\/{0,1}?){1,5}?\\r
Строка ввода:
OS BENKL/LHRBA/MANQFL\r\n
Кажется, я всегда фиксирую последнюю группу, которая является группой MANQFL (MAN QFL)
, и моя цель - собрать все три группы (может быть 1-5 групп):
(BEN KL) , (LHR BA) and (MAN QFL).
Любая помощь будет оценена.