是否有用于Javascript或PHP的解析表达式语法(PEG)库?

是否有用于Javascript或PHP的解析表达式语法(PEG)库?

Are there any Parsing Expression Grammar (PEG) libraries for Javascript or PHP?

我发现自己被用于描述领域特定语言的解析表达式语法形式主义,但到目前为止,我发现的实现代码是用Java和Haskell等语言编写的,在我的组织的共享托管环境中不是Web服务器友好的 不得不忍受。

有没有人知道任何PEG库或PackRat解析器生成器的Javascript或PHP? 当然,任何语言的代码生成器都可以生成Javascript或PHP源代码。


我最近为JavaScript编写了PEG.js,基于PEG的解析器生成器。它可以在命令行中使用,也可以从浏览器中尝试。


实际上有一个用于Javascript:OMeta。 http://www.tinlizzie.org/ometa/

我还在Python中实现了这个版本:http://github.com/python-parsley/parsley


php PEG https://github.com/maetl/php-peg

这篇文章真的很老但我通过谷歌找到它,应该已经回答了


Language.js:

Language.js is an open source experimental new parser based on PEG (Parsing Expression Grammar), with the special addition of the"naughty OR" operator to handle errors in a unique new way. It makes use of memoization to achieve linear time parsing speed


还有Kouprey for JavaScript,这是一个非常容易使用的PEG生成器/库。


看看https://github.com/leblancmeneses/NPEG可以轻松转换成php。
使用匿名函数创建解析树。


你看过ANTLR吗?它生成词法分析器和解析器代码,处理抽象语法树,允许您插入要注入词法分析器/解析器代码的语法代码,并且可用于各种语言!


推荐阅读