【发布时间】:2011-05-31 18:02:43
【问题描述】:
我有任何 C# 中的内置库或自动代码生成器,它接收配置文件并从字符串构建计算树的解析器,如果没有,请帮我提供建议 例子: “-2+5>3” 我想构建计算树,其中
谢谢。
【问题讨论】:
标签: c# parsing compiler-construction
我有任何 C# 中的内置库或自动代码生成器,它接收配置文件并从字符串构建计算树的解析器,如果没有,请帮我提供建议 例子: “-2+5>3” 我想构建计算树,其中
谢谢。
【问题讨论】:
标签: c# parsing compiler-construction
看看sprache。这是一个简单的解析器,可以让您构建表达式树,然后对其进行评估应该很容易。
【讨论】:
您看过 System.Linq.Expressions 吗?例如How to convert string into System.Linq.Expressions.Expression in C#?
【讨论】:
Irony 库使用非常简单,并且在示例中附带了一个表达式解析器。
【讨论】:
如果您的目标是评估表达式而不是树本身 - 您可以查看以下内容: http://www.codeproject.com/KB/recipes/sota_expression_evaluator.aspx
可能值得注意的是,大多数表达式求值器的实现都是使用 RPN。 http://en.wikipedia.org/wiki/Reverse_Polish_notation
【讨论】: