我正在尝试使用 Ragel 来实现一个简单的 yes/no fsm。不幸的是,语言规范由大约一千个正则表达式的联合组成,其中大多数运算符出现一次或多次。因此,可能的状态数量激增,似乎不可能使用 Ragel 为我的语言生成 fsm。有没有可以做我需要的工具,或者我应该交换方法?我需要比依次检查每个正则表达式的输入字符串更好的东西。我可以将一千个正则表达式切成约 50 个的块,并为每个块生成一个 fsm,并对所有机器运行每个输入字符串,但是如果有一个工具可以在没有这种 hack 的情况下处理这种工作,我会很高兴听到它。
谢谢!