1
我使用AntlrWords 2.1为antlr v4创建语法。无论出于何种原因,该声明均不予承认。我搜查了很多,但无法找到原因。你能找到任何错误吗?带括号和空格的Antl语法
grammar bracketsGrammar;
OPENINGBRACKET : '[';
CLOSINGBRACKET : ']';
lParanthesis : OPENINGBRACKET ;
rParanthesis : CLOSINGBRACKET ;
WS : ' ' ->skip;
WORD : ~[ "]+ ;
parenthesizedWord : lParanthesis WS+ WORD WS+ rParanthesis ;
fullfile: parenthesizedWord EOF ;
我的输入是
[ Manuel ]
,输出是
(fullfile (parenthesizedWord (lParanthesis [) Manuel ]) <EOF>)
正如你可以同时看到[和]是输出的一部分,但我rParanthesis不被认可。
感谢您的帮助 曼努埃尔
你有没有考虑[GrammarLexer.g4](https://github.com/sharwell/antlrworks2/blob/ master/org-antlr-works-editor/src/org/antlr/works/editor/grammar/experimental/GrammarLexer.g4)和[GrammarParser.g4](https://github.com/sharwell/antlrworks2/blob/master /org-antlr-works-editor/src/org/antlr/works/editor/grammar/experimental/GrammarParser.g4)? –
我在这里没有看到任何有关“输出”的内容。你究竟是如何产生你的输出的? –
使用ANTLRWorks 2.1创建输出,在那里你可以选择Run-> Run in TestRig ...这会给你生成的标记列表和生成的树 –