首页 > 代码库 > .NET 表达式计算:Expression Evaluator
.NET 表达式计算:Expression Evaluator
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; //关键点,注册符号v registry.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个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。