如何创建给定形状的 antlr 树?
我有一个 antlr 语法,它有这样的规则: rule: ID (COMMA ID)* 其中 ID 是用于匹配典型变量名称的词法分析器规则,逗号是匹配逗号的词法分析器规则。…
如何获取 ANTLR3 TreeParser 中的行号
我正在尝试获取 ANTLR3 树语法中的行号(ANTLR3 生成的代码属于 TreeParser 类)。 谷歌只找到了 ANTLR2 的解决方案,遗憾的是在 ANTLR3 中不起作用。…
Antlr3 中的所有语法选项在哪里?
Antlr2 中有许多可以设置的语法选项(参考)。现在在 Antlr3 中,我们有大约 1/3 的选项数量(参考)。 所以我对此有两个问题: 有谁知道为什么这么多…
在 Antlr 中定义语法
我定义了以下语法。 grammar Sample_1 @header { package a } @lexer::header { package a } program : define* implement* define : IDENT '=(' INT…
Java3d 形状与 Antlr
那么如何评估一个非常简单的 antlr 语法,它只能做到这一点。 Box(1,2,4) Cylinder(1,2) 并构建 java3d 形状,(假设我已经为 java3d 构建了画布,并…
ANTLR:如何将所有定义为空格的字符替换为实际空格
我的 ANTLR 代码如下: LPARENTHESIS : ('(') RPARENTHESIS : (')') fragment CHARACTER : ('a'..'z'|'0'..'9'|) fragment QUOTE : ('"') fragment WI…
ANTLR树语法和StringTemplate代码翻译
我正在开发一个代码翻译项目,其示例 ANTLR 树语法如下: start: ^(PROGRAM declaration+) -> program_decl_tmpl() declaration: class_decl | inte…
如何解决 ANTLR 输入不匹配的问题
给出语法 test : 'test' ID '\n' 'begin' '\n' 'end' '\n' -> ^(TEST ID) ID : ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'0'..'9'|'_')* 和测…
获取 ANTLR3 中复合规则的词位
假设我有这样的事情: rule: (rule2 | rule3) {} //How can i get at this point rule2 or rule3 text? rule2: HELLO+ rule3: WORLD* 我想获取规则2或…
Antlr 3.2 重写规则
我最近开始学习 Antlr 并下载 AntlrWorks 1.4,其中应该包含 Antlr 3.2。现在,3.2 应该支持重写规则语法,如“->”但我什至无法获得基于 Lexer 或 …
ANTLR 重写查询文本以使用较早的节点重复文本
我是 ANTLR 的新手,正在尝试使用以下内容解析查询 grammar SearchEngineQuery options { language = CSharp2 output = AST } tokens { AndNode } LPA…
为什么 ANTLR 没有按照我期望的方式识别这条规则?
我正在使用 ANTLR 来替换我目前拥有的现有(小型)解析器。这是我尝试解析的文件的片段: Lurker 915236167 10 2 Bk cc b b 1000 70 200 Jc Qs Lurker…
在 ANTLR 中使用 @header
我无法让“@header”或任何其他 @ 规则在 ANTLR 中工作。使用非常基本的语法,如下所示: grammar test options { language = CSharp2 } @header { us…
ANTLR3 词法分析器优先级
我想在 ANTLR3 词法分析器中从 '..' 创建一个标记,该标记将用于将表达式串在一起, a..b // [1] c .. x // [2] 1..2 // [3] 3 .. 4 // [4] 所以,我…
如何在 Antlr 分词器中进行 Unicode 转义解码
我使用 AntlrWorks 创建了一个 antlr 语法,并创建了一个供内部使用的本地化工具。我想在解析时将 unicode 转义序列转换为实际的 Java 字符,但不确定…