.Net内的符号操作

时间:2017-11-01 23:31:32

标签: c# .net

我记得我的一个计算机科学课程中的一个分类涉及与Common Lisp的符号差异。常见的lisp的属性允许您采用等式并应用符号操作。

我的问题是,.Net框架中是否有允许符号操作的库和编程语言?我更喜欢使用C#来解决这个问题。我已经查看了this链接,但没有给出具体答案。

让我更详细地解释一下我的情况。

假设我有条件公式,整数为String。 每个名称1DPZ_XY表示一个整数变量。 已为每个变量分配了一个值。

"
{
1DPZ_a2 = (2 OR 3)
AND
(
1DPZ_a6 = 9
OR 
1DPZ_b3 = (3 OR 7)
AND 
(
1DPZ_b4 = 8
OR
1DPZ_b5 = 2
OR
1DPZ_b6 = (4 OR 2)
)
)
}
"

显然这个公式将返回true或false。 如何将此String逻辑转换为可以与之交互的if语句?

1 个答案:

答案 0 :(得分:2)

您可以解析字符串并从中构建.NET Expression Tree。然后,您可以操作该表达式树来对其进行评估,打印或转换(通常使用ExpressionVisitor)。