1.简介:
ANTLR v4是一款功能强大的语法分析器生成器,可以用来读取、处理、执行和转换结构化文本或二进制文件。它被广泛应用于学术界和工业界构建各种语言、工具和框架。
2 关键字:
import, fragment, lexer, parser, grammar, returns,
locals, throws, catch, finally, mode, options, tokens
3注释
多行:/****/
单行:/****/
4.准备工作:idea安装插件
5.创建一个java项目,并在其中创建一个.g4的文件
注:
1.文件名称需与grammar后名称一致
2.解析器规则名称总是以小写字母开头
3.首字符后可以跟大小写字母、数字和下划线
4.令牌名称始终以大写字母开头
grammar Hello;
r : 'hello' ID ; // 匹配关键字 hello 后跟一个标识符
ID : [a-z]+ ; // 匹配小写标识符
WS : [ \t\r\n]+ -> skip ; // 跳过空格、制表符、换行符
文件上邮件执行:
6.查看生成文件
Hello.interp
Hello.tokens :ANTLR会给每个我们定义的词法符号指定一个数字形式的类型
HelloBaseListener.java :监听器类(实现)【通过监听触发回调方法】
HelloBaseVisitor.java :访问者(Visitor)模式实现【可以修改分词过程中的数据】
HelloLexer.interp
HelloLexer.java :词法解析器类识别我们语法中的文法规则和词法规则
HelloLexer.tokens
HelloListener.java :监听器类(接口)
HelloParser.java :语法解析器类
HelloVisitor.java :访问者(Visitor)模式接口