1、本经验假设已经获取antl筠续师诈r4的jar包,并按照antlr4 github所给帮助配置好环境。注意,antlr4的tool一定需要ja即枢潋雳va来运行,而runtime则跟具体语言有关,是辅助运行antlr4生成的词法语法解析器的。
2、当antlr4工具已经配置好后,安装runtime。如图所示,可以直接用pip命令安装。
3、关于Python runtime相关的说明,在github antlr4的doc中有python-target的介绍。
4、然后如果想要测试运行,先准备g4文件。如图准备了一个词法和一个语法的文件。
5、接下来,在命令行上(如图是powershel盟敢势袂l),如果使用命令:antlr4 词法文件名会生成对应的Lexer,但是默认生成的是java代码。而我们需要python代码。
6、所以,需要添加一个参数,如图所示,-Dlanguage-Python3 ,即可生成python3为目标语言的代码。
7、同理,我们也需要结合语法g4文件,生成Parser代码。生成好后,在目录下可以看到圈出的两个py文件。
8、然后另起文件编写main函数,如图所示。本经验没有深入讨论怎么遍历抽象语法树,只是调用compilationUnit函数并显示部分结果。
9、运行该主函数文件,可以看到解析结果。这说明antlr4 python runtime 成功安装并可以使用。