Je suis en train d'analyser la grammaire suivante, où Value
peut être tout caractère jusqu'à la virgule, mais je ne peux pas le faire fonctionner correctement:Parse tout caractère jusqu'à ce point-virgule dans ANTLR4
grammar Test;
pragmaDirective : 'pragma' Identifier Value ';' ;
Identifier : [a-z]+ ;
Value : ~';'* ;
WS : [ \t\r\n\u000C]+ -> skip ;
Quand je le tester avec pragma foo bar;
, je reçois l'erreur suivante:
line 1:6 extraneous input ' ' expecting Identifier
line 1:11 extraneous input 'bar' expecting ';'
J'ai fini par définir une nouvelle règle d'analyseur pour la valeur pragma. C'était ma première tentative d'écriture d'un analyseur avec ANTLR et j'aurais dû faire d'autres lectures. Merci pour la recommandation! –