我需要为一些特定的语言(SQL的子集)编写解析器。据我所知,要做到这一点,最简单的方法是在BNF中定义语法,并使用类似yacc的工具(我对GPPG有积极的经验)。但是当我开始的时候,我已经意识到这些工具产生的解析器依赖于一些核心解析器程序集(例如ShiftReduceParser.dll for GPPG)。我需要为Silverilght实现解析器,所以我不能使用针对整个框架的库。
有没有可以在Silverilght中使用的解析器生成器工具?
发布于 2010-01-09 02:06:14
我不知道你可以在Silverlight中使用什么框架库,但Coco/R看起来相当轻量级,只需要System.IO和System.Text的一些流/文本处理。
发布于 2010-01-09 02:52:00
你需要解析器在Silverlight中运行吗?您不能让服务器通过WCF或其他传输来处理该功能吗?这样,您就可以使用您以前使用过的代码来执行解析。
发布于 2010-01-09 03:02:24
您可能想尝试一下像ANTLR这样的库。Here's an article,它展示了如何使用它进行SQL解析。
https://stackoverflow.com/questions/2029590
复制相似问题