0
私は本当にこのようにANTLRで定義された単純なDSLを持っています。ANTLR "残りの部分"トークンを作成する方法
grammar Transformer;
fragment Digit : [0-9];
Amp:'\'';
Left:'(';
Right: ')';
Comma: ',';
Id: [A-Za-z][a-zA-Z0-9]+;
Int: '-'? Digit+;
WS: [\n\r\t]+ ->skip;
FuncStart: '>';
DataStart: '#';
parse: (datainput | function)+;
qoutedtext: Amp .*? Amp;
datainput: DataStart Id;
function: FuncStart Id Left param (Comma param)* Right;
param: (datainput|function|qoutedtext|Int);
このテキストを解析
#Id;>ToUpper(#Name);ThisShouldEndUpAsAToken>FillLeft(#EmpNo,20,'abc')
木は私がThisShouldEndUpAsAToken tekstをキャッチすることはできませんよということを除いて、としてexpecteに見えますトークンとして。 私は文法の中でこれを行うべき構文解析を持っていないことを知っていますが、それを行う方法を理解することはできません。
HEEELP :)このようなあなたのparse
ルール変更についてどのように