OSLO,ANTLR或其他解析器语法,用于解析QUERY EXPRESSION

时间:2010-05-01 02:19:39

标签: antlr text-parsing oslo query-expressions

问候

我正在开发一个项目,要求我以文本形式编写查询,然后将它们转换为一些易于处理的节点,由一些不明确的存储库处理。在那里,我最不感兴趣的部分是将文本转换为节点的部分。我希望它已经在某个地方完成了。

因为我正在制作东西,所以我选择使用LINQish表达式语法。

from m in Movie select m.A, m.B

我开始手动解析并获得了基础知识,但它非常俗气。我正在寻找更好的解决方案。我使用MGrammar取得了一些进展,但如果这样的事情已经存在就会很好。有没有人知道任何已经这样做的事情?我查找了现有的ANTLR模板,但没有运气。

感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

你可以从一个完整的C#语法开始,除了LINQ语法之外扔掉所有东西: - }

DMS Software Reengineering Toolkit是一个用于构建具有完整C#4.0前端的解析器/程序分析器/转换器的工具,包括所有LINQ语法。

答案 1 :(得分:0)

this example尝试Pyparsing wiki Examples page。它应该给你一个开始。