java - 如何在 Antlr-4 词法分析器规则的操作中获取 token 属性

标签 java php antlr antlr4 antlr3

我是 Antlr-4 的新手,但对 Antlr-3 有一些了解,Antlr-3 可以在不需要任何解析器规则的情况下创建词法分析器;为了通过匹配一些标记来匹配词法分析器规则,例如:

CLASS: 'Class' WS+ id=ID
{
System.out.println($id.text);
}
ID : [a-z]+ ;
WS : [ \r\t\n]+

我怎么能在没有任何解析器的情况下在 Antlr-4 中执行此操作,因为 Antlr-4 词法分析器不允许在规则的操作中使用属性?

任何想法/示例都会对我有所帮助!

最佳答案

根据ANTLR4 grammar您当然可以在词法分析器规则中使用标签。只需创建您的独立词法分析器语法并将其提供给 ANTLR 以让它生成您的词法分析器类。

关于java - 如何在 Antlr-4 词法分析器规则的操作中获取 token 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44951236/

相关文章:

php - 将 JSON 解码保存到 MySQL、PHP

php Mysql 多个WHERE的时候如何标记origin?

antlr - 简单 antlr4 语法中的不匹配输入错误

java - 在 Java 序列化中对 xml 父类(super class)元素进行排序

java - Spring 启动: MySQLNonTransientConnectionException: Could not create connection

php MySQL语法错误

java - 给定ANTLR java语法获取java源方法名称列表?

c - Antlr 4解析大型c文件需要永远

java - 操作栏上的向上导航会关闭 Android 中的应用程序。无效输入连接

java - Java中如何计算字符串开头某个字符出现的次数