官网: http://www.antlr.org/
ANTLR 是 ANother Tool for Language Recognition 的缩写
ANTLR 4 是一款强大的语法分析器生成工具,可用于读取、处理、执行和翻译结构化的文本或二进制文件
ANTLR 4 的开发流程:
.g4
下面以 macOS X 为例,描述 ANTLR 4 环境搭建过程:
cd /usr/local/lib && wget http://www.antlr.org/download/antlr-4.7.1-complete.jar
添加 JAR 到 $CLASSPATH 环境变量:
编辑 ~/.bash_profile 文件
export CLASSPATH=".:/usr/local/lib/antlr-4.7.1-complete.jar:$CLASSPATH" alias antlr4='java -Xmx500M -cp "/usr/local/Cellar/antlr/4.7.1/antlr-4.7.1-c omplete.jar:$CLASSPATH" org.antlr.v4.Tool' alias grun='java org.antlr.v4.gui.TestRig'
应用修改:
source ~/.bash_profile
新建语法描述文件 Hello.g4 :
grammar Hello; r : 'hello' ID ; // 匹配 hello 后面的标识符 ID : [a-z]+ ; // 匹配小写标识符 WS : [ /t/r/n]+ -> skip ; // 跳过空格、制表符和换行符
生成代码:
antlr4 Hello.g4
编译:
javac Hello*.java
显示可视化的语法树:
grun Hello r -gui hello Anthony ^D