.NET 運算式計算:Expression Evaluator

來源:互聯網
上載者:User

標籤:符號   get   操作符   動態類型   home   oat   輕量   mat   算術   

Expression Evaluator 是一個輕量級的可以在運行時解析C#運算式的開源免費組件。運算式求值應該在很多地方使用,例如一些工資或者成本會計系統,就需要在後台動態配置計算運算式,從而進行計算求值。相比 NCal,還是這個 Expression Evaluator 比較強大,雖然部分功能有重疊。也都能計算常規的數學運算式。

Expression Evaluator 支援的特性有:

  • 支援算術運算子,支援關係運算子,以及邏輯運算子

  • 支援運算式分組和括弧,以及遞增遞減運算子

  • 支援運算式屬性訪問以及動態類型,支援字串的+運算

  • 支援數實值型別的尾碼d/f/m/l/u/ul、

  • 支援隱式運算式,以及成員訪問操作符(.)

  • 支援一些預設的類型,如double, float, char, string, DateTime, Convert, Math

  • 支援foreach迴圈

  • 。。。等等,更多功能還期待你的使用和發現

簡單的數值運算式就不示範了,看一個比較有新意的代碼:

class MyClass{     public string[] myExternalString;     public int x;}  var v = new MyClass();v.myExternalString = new string[] { "Hello", "there", "World!" };v.x = 2;//關鍵點,註冊符號vregistry.RegisterSymbol("v", v);//動態計算屬性//返回結果是"there",因為v.x=2,2/2=1,所以返回索引1的值"v.myExternalString[v.x/2]"

 

項目首頁:http://www.open-open.com/lib/view/home/1435843266122

.NET 運算式計算:Expression Evaluator

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.