你会如何在c#中创建一个表达式解析器?

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

这是您可能会查看的文章 。 还有像Flee这样的工具。 或者另一种允许您使用CodeDom提供程序评估C#表达式的技术。

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

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

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