Я учусь писать генератор лексического анализатора (клон lex) на основе регулярного выражения для алгоритма прямого перевода DFA, описанного в «Книге Дракона».
Теперь я могу успешно преобразовать регулярное выражениев DFA, но я застрял, когда есть несколько правил, например:
abc { printf("abc"); }
a* { printf("a*); }
Я могу преобразовать abc
и a*
в два графика DFA, но как объединить эти два графика DFA толькоодин