吉森用于在JavaScript中创建解析器的API Jison在JavaScript中生成自底向上的解析器。它的API类似于Bison的API,因此得名。它支持Bison的许多主要功能,以及一些它自己的功能。如果您不熟悉Bison等解析器生成器,以及一般的Context-free Grammars,可以在Bison手册中找到一个。如果您已经了解Bison,那么Jison应该很容易上手。
简而言之,Jison采用JSON编码的语法或Bison风格的语法,并输出一个能够解析该语法所描述语言的JavaScript文件。然后,您可以使用生成的脚本来解析输入并根据输入接受、拒绝或执行操作。是不是很神奇?安装也很简单,可以使用npm:npm install jison -g
。想要更多示例?您可以克隆Github存储库。
进一步探究Jison在JavaScript中的应用,这个Bison源码也是一个很好的参考资料。对于Atom编辑器和Github语言学家的Jison语法定义源码,点击这里。想要了解更多关于词法和语法解析器的知识,这篇文章一定不能错过。
对于那些希望将SQL解析为抽象语法树(AST)并字符串化回SQL的开发者来说,这个JS SQL parser或许正是你需要的。总之,Jison在JavaScript中生成自底向上的解析器功能强大且易于使用,只要掌握了基本的Context-free Grammars概念,就能快速上手。
如何将C语法分析器应用于Bison和Yacc?这里有详细教程。觉得有趣吗?快去试试吧!
暂无评论