Я пытаюсь разобрать и токенизировать рецепты.Ингредиенты могут быть написаны двумя основными способами:
Стиль 1
1 Ripe Avocado
1x Ripe Avocado
- x
необязательно и иногда присутствует
ИЛИ:
Стиль 2
1 Ripe Avocado (lrg) 123
1x Ripe Avocado (lrg) 123
- если присутствует сокращение, то есть целое число кода элемента
Я пытаюсь а) определить, совпадает ли это со стилем 1 или 2 и б) , разбить на следующие группы захвата .
[1][Ripe Avocado][lrg]?[123]?
Кажется, я не могу последовательно разобрать это, поэтому любая помощь будет принята с благодарностью!
Редактировать:
^(\d+)x? ([a-zA-Z0-9_', -]+)
- это то, что у меня было, но это не такt учитывать дополнительные группы захвата в стиле 2.