1
У меня есть следующая грамматика:Найти комментарий в ANTLR Грамматика
grammar bxk;
options
{
language=CSharp3;
}
// start rule
start
: com=comment root EOF
;
root
: ROOT_ID CT_ID END
;
comment returns [string comment]
: ((('/*' des=(~'*/')* '*/'))NEWLINE) {$comment=$des.text;}
;
CHAR : ('a'..'z'|'A'..'Z') ;
ROOT_ID : 'ROOT_'(CHAR | DIGIT | SPECIAL)+ ;
CT_ID : 'ct_'(CHAR | DIGIT | SPECIAL)+ ;
DIGIT : '0'..'9';
SPECIAL : '_' ;
END : ';';
ASSIGN : '=';
STRING : CHAR (CHAR | DIGIT | SPECIAL)*;
WS : (' '|'\t' | '\n' | '\r' | '\u000C')+ {Skip();} ;
Теперь я получить комментарий betwenn в /*
и */
. Это прекрасно работает. Но места были очищены, потому что токен WS с вызовом Skip()
. Могу ли я что-нибудь пропустить пробелы, но в структуре комментариев я хочу иметь пробелы.
Надеюсь, у кого-нибудь есть решение?
Спасибо, что работает отлично. – user1469116
Добро пожаловать, @ user1469116. –