使用数学运算符评估字符串
有没有一种简单的方法来评估像"(4+8)*2"
这样的字符串,这样你就可以获得24的int值?
或者还有很多工作要做到这一点……?
使用Ncalc:
Expression e = new Expression("(4+8)*2"); Debug.Assert(24 == e.Evaluate());
https://ncalc.codeplex.com/
此外,这个问题之前已被提出并且有一些有趣的答案,包括Ncalc: 评估字符串“3 *(4 + 2)”yield int 18
其他人添加了这个,然后它被删除了。 我认为这很酷,因为不需要第三方库。
课程 { static void Main(string [] args) { Console.WriteLine(评估( “(4 + 8)* 2”)); Console.ReadKey(); } public static double Evaluate(字符串表达式) { DataTable table = new DataTable(); table.Columns.Add(“expression”,typeof(string),expression); DataRow row = table.NewRow(); table.Rows.Add(行); return double.Parse((string)row [“expression”]); } }
你需要一个Math Expression Parser。 以下是资源:
上述就是C#学习教程:使用数学运算符评估字符串分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1004052.html