DFA - >正则表达式

时间:2009-01-13 01:35:05

标签: regex state-machine

我在纸上写了一篇DFA,并希望将其翻译成一组正则表达式。有人知道这样做的好工具吗?

2 个答案:

答案 0 :(得分:6)

从我的小谷歌搜索中,我找到了JFLAP。他们还有how to Convert FA to regular expression的教程。

  

<强> JFLAP

     

JFLAP是用于实验的软件   与正式语言主题包括   非确定性有限自动机,   非确定性下推自动机,   多带图灵机,有几种   语法类型,解析和   L-系统。除了建设   并测试这些例子,JFLAP   允许一个人试验   建筑证明从一种形式到   另一个,例如将NFA转换为   DFA到最小状态DFA到a   正则表达式或常规语法。   单击此处获取更多信息   可以用JFLAP做什么。

答案 1 :(得分:1)

如果您想要的是解析器,则无需将正则表达式转换为中间形式。您可以使用flexre2c相当直接地对DFA进行编码。多个状态的编码不是常见的情况,所以一开始感觉有点不自然(并且在教程中没有很好地介绍),但是一旦你开始使用它,它就非常容易。