是否有一种方法可以在C#中计算字符串并生成一个整数(假设字符串是一个等式)
好的,我知道在Python中,你说有一个叫做的字符串
strExpression它的值是“1 + 2-(3 * 5)”
有一个python方法(函数,对不起,我得到了混淆的术语)将评估该字符串并返回一个数字整数值(在这种情况下,它应该返回-12。我不记得python语法,因为我做了一个前一段时间(然后我摔断了arm因为无法打字而不得不退出),但希望有人知道我的意思
有没有办法在C#中做到这一点
我只是在学习,并且正在创建一个简单的计算器程序,并且我已经创建了一个基本的计算器程序,允许您添加到以前的数字,但我想为了我自己的利益而扩展它。 非常感谢您的帮助。
在C#中没有这样的方法,但您可以在运行时使用编译器轻松编写一个方法来评估表达式。 查看CSharpCodeProvider
。
您可以使用在C#中公开所有客户端javascript函数的Microsoft.JScript
using System; using Microsoft.JScript; using Microsoft.JScript.Vsa; namespace JustTest { class Program { static void Main(string[] args) { object value = Eval.JScriptEvaluate("1+2-(3*5)", VsaEngine.CreateEngine()); Console.Write(value); Console.ReadLine(); } } }
试试这个它使用CodeDOM来创建一个计算器