Данная работа преобразует регулярное выражение в контекстно-свободную грамматику с построением множества цепочек. (цепочки выводятся с необходимой длиной в указанном диапазоне)
Например
Регулярное выражение : (a+b+c)*+(ab+c)*
Диапазон длин от 3 до 6
Ответ
Грамматика
A3 -> A5
A1 -> A3
A0 -> A0 A0
S -> A6
A7 -> A8
A9 -> c
A3 -> A4
A1 -> A2
A2 -> a
A5 -> c
A7 -> A9
A0 ->
A4 -> b
S -> A0
A0 -> A1
A6 -> A7
A8 -> ab
A6 -> A6 A6
A6 ->
Множество цепочек: (их много полный пример на приложенном скриншоте)
cab
abc
abab
bbb
bba
и другие
Более подробно на приложенном скриншоте!
Для запуска программы
Самое что главное, такой программы нет в интернете больше нигде. Даже на git вы ее не найдете. Поэтому господа и дамы приобретайте по демократичной антикризисной цене)
Альфред Ахо, Рави Сети, Джеффри Ульман, Моника Лам "Компиляторы. Принципы, технологии, инструменты"