回答
使用Ncalc:
Expression e = new Expression("(4+8)*2");
Debug.Assert(24 == e.Evaluate());
而且,這個問題已經在以前問及有一些有趣的答案,包括Ncalc:Evaluating string "3*(4+2)" yield int 18
別人加入這個,然後將其刪除了。我認爲這很酷,因爲沒有第三方庫需要。
class Program { static void Main(string[] args) { Console.WriteLine(Evaluate("(4+8)*2")); Console.ReadKey(); } public static double Evaluate(string expression) { DataTable table = new DataTable(); table.Columns.Add("expression", typeof(string), expression); DataRow row = table.NewRow(); table.Rows.Add(row); return double.Parse((string)row["expression"]); } }
在我的使用,這個解決方案比NCalc快大約1.5倍,而同樣穩定(至少對於我所做的)。它處理的布爾表達式與NCalc相同。這應該更廣告。 – tootsiejasmine 2013-10-09 04:46:34
這不處理權力或平方根。 – seekerOfKnowledge 2013-10-15 19:26:37
這個解決方案非常適合簡單的表達,因爲我需要它。感謝您重新發布它。 – zreptil 2014-03-09 08:03:18
- 1. 從字符串評估數學函數
- 2. 查找字符串數學運算符
- 3. ostream C++運算符的懶惰評估
- 4. C中的評估&&運算符
- 5. 評估包含在字符串中的運算符的操作
- 6. 按位運算符和二進制字符串評估
- 7. 如何評估隨機數學運算符?
- 8. Groovy字符串評估運行時
- 9. 字符串運算符C++
- 10. 從一個字符串使用VB評估數學表達式
- 11. 將字符串數組用於評估
- 12. C:評估字符串的一部分
- 13. 如何評估字符串?
- 14. Excel VBA字符串評估
- 15. Clojure宏字符串評估
- 16. 評估字符串模板
- 17. 評估字符串arrayName中
- 18. 從字符串評估Typescript?
- 19. Javascript字符串評估
- 20. 如何評估(數學)字符串表達式,vb.net
- 21. 評估一個簡單的字符串數學表達式
- 22. 如何評估由字符串表示的數學表達式?
- 23. 評估字符串中的數學表達式
- 24. 將字符串轉換爲數學評估
- 25. VB.Net-評估字符串中的數學表達式
- 26. 如何從J2ME中的字符串評估數學表達式
- 27. 如何在java中評估字符串數學表達式
- 28. Python - 評估字符串內的數學表達式
- 29. Java字符串和數學表達式評估器
- 30. 評估Corona中的數學字符串Lua
可以看看:[表達式計算器重新(EVAL在100%管理的.NET函數)](http://www.codeproject.com/KB/recipes/eval3.aspx) – 2011-04-30 01:53:47