解析所需的内容

在执行解析时,在开始之前,需要指定语言的语法 。解析器还需要令牌源。

解析器可以是手写代码,也可以使用解析器生成器工具 。如果使用了解析器生成器工具,那么如果你的平台中尚未包含该工具,则需要下载并安装该工具。

语法定义

解析器的语法通常需要以上下文自由形式编写。通常使用诸如 BNF(Backus-Naur 形式)EBNF(扩展后 Naur 形式)之类的符号。通常用于描述编程语言的其他符号可能是铁路图

词汇分析

通常由词法分析器(或扫描仪) 为解析器提供令牌。更多细节可以在词法分析器(TBC)的文档中找到。

解析技术

手工编写一个解析器,一个合适的算法将需要选择适合双方语言被解析和执行手段。解析算法分为自上而下解析自下而上 解析两种类型。在开始编写解析器时,初学者更容易学习(递归)自顶向下解析器。

分析器生成器工具

创建解析器的最常用方法是使用解析器生成器工具。有很多这样的工具,但最常用的一些是: