yandex / tomita-parser

Other
495 stars 113 forks source link

Конечное количество возможных повторений терминалов #147

Open KotIva opened 3 years ago

KotIva commented 3 years ago

Всем привет. Возможно ли каким-то образом определить минимальное и максимальное количество возможный повторений терминала в цепочке по аналогии с AnyWord , здесь указано число повторений цифр [0-9] от 1 до 3 раз.

victorbocharov commented 3 years ago

Сделать точно как в регулярках нельзя. Есть ограничение count , но оно только ограничивает количество терминалов сверху.

KotIva commented 3 years ago

А можете привести пример как это выглядит в грамматике и как будет работать?

victorbocharov commented 3 years ago

Пример для count есть в документации. Я его ни разу не использовал. Чтобы было ограничение и сверху и снизу можно сделать вот так ({1,3}):

X -> A | A A | A A A ;
KotIva commented 3 years ago

Ладно, понял, спасибо.