表驱动的词法分析器/扫描仪实现

时间:2011-03-16 11:47:03

标签: architecture lexical-analysis table-driven

其实我有两个问题。如果我开始编写自己的词法分析器,解析它将是什么架构?我应该考虑什么原则(即开 - 关,松散耦合)?

下一个问题是关于表驱动的词法分析器实现。最近我写了词法分析器,但它不是一个编程珍珠。显然我使用过于直接的方法)。那么有谁知道如何实现表驱动的词法分析器?

1 个答案:

答案 0 :(得分:0)

因此,如果要构建词法分析器,则目标是通过“吃”输入流来返回下一个标记的函数。

最好的选择是实现确定性有限自动化。 这意味着您首先必须为DFA创建表。 该函数贯穿DFA表并在特定的结束状态结束,并且每个结束状态都分配给一个令牌。因此,只需返回该令牌,您便拥有了一个表驱动的词法分析器。