Parsing 解析表达式语法(PEG.js)中的保留字
和给我这样的解决方案:Parsing 解析表达式语法(PEG.js)中的保留字,parsing,peg,Parsing,Peg,和给我这样的解决方案: Identifier "identifier" = !ReservedWord [A-Za-z_]+ ReservedWord = "test" / "abc" 此解决方案无法解析像“test_var”这样的标识符 在这个例子中,语法!ReservedWord将排除以“test”或“abc”开头的所有变量 提前感谢。ReservedWord在保留字完成时成功,不管接下来发生什么。因此,解决方案是在
Identifier "identifier"
= !ReservedWord [A-Za-z_]+
ReservedWord
= "test"
/ "abc"
此解决方案无法解析像“test_var”这样的标识符
在这个例子中,语法!ReservedWord将排除以“test”或“abc”开头的所有变量
提前感谢。
ReservedWord
在保留字完成时成功,不管接下来发生什么。因此,解决方案是在存在包含更多标识符字符的较长匹配时使其失败:
Identifier "identifier"
= !ReservedWord [A-Za-z_]+
ReservedWord
= ( "test" / "abc" ) ![A-Za-z_]
很好的解决方案。这对我帮助很大,效率不是很低吗?