L'analyse d'un mot réservé dans l'Analyse Expressive de la Grammaire (PEG.js)

StackOverflow https://stackoverflow.com//questions/11712909

  •  13-12-2019
  •  | 
  •  

Question

L' question similaire et la site web de l'auteur donnez-moi des solutions de ce type:

Identifier "identifier"
  = !ReservedWord [A-Za-z_]+

ReservedWord
  = "test"
  / "abc"

Cette solution ne peut pas analyser un identificateur de type "test_var".

Dans cet exemple, la grammaire !ReservedWord sera exclusif de toutes les variables commençant par "test" ou "abc".

Merci à l'avance.

Était-ce utile?

La solution

ReservedWord réussit, lorsqu'un mot réservé est complète, indépendamment de ce qui suit.Donc la solution est de faire échouer quand il n'y a plus de match, qui comprend plus de l'identificateur de caractères:

Identifier "identifier"
  = !ReservedWord [A-Za-z_]+

ReservedWord
  = ( "test" / "abc" ) ![A-Za-z_]
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top