【问题标题】:How would you create an expression parser in c#?您将如何在 C# 中创建表达式解析器?
【发布时间】:2011-06-29 14:57:32
【问题描述】:

我只是好奇。就像在解释语言甚至语句计算器中一样,人们如何将输入或文件给出的字符串转换为实际表达式?例如 "Enter Calculation: " 然后你写出 "2*7/4" 这是一个字符串。程序如何将字符串转换为实际的表达式?将字符串转换为 int 很容易,但是如何转换 运算符,例如 +-/ , ETC。?我知道这类东西通常是用 C/C++ 实现的,但是有可能用像 C# 这样的高级语言来实现吗?如果是,那怎么办?

【问题讨论】:

    标签: c# .net string interpreted-language


    【解决方案1】:

    这里是an article,您可以查看。还有像Flee 这样的工具。或者another technique,它允许您使用 CodeDom 提供程序评估 C# 表达式。

    【讨论】:

      【解决方案2】:

      我相信这可以使用表达式树来实现,这就是 LINQ 的实现方式。

      http://msdn.microsoft.com/en-us/library/bb397951.aspx

      【讨论】:

        【解决方案3】:

        谷歌“解析树”。可以用任何图灵完备语言编写。

        【讨论】:

          猜你喜欢
          • 2023-03-25
          • 1970-01-01
          • 2013-08-04
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-11-05
          相关资源
          最近更新 更多