expression-analyzerjava 公式解析 表达式解析
基于有限自动机和LL(1)分析法实现的公式解析器,使用java语言开发,具备以下功能:
1) 实现了算术和逻辑表达式的解析,可使用单条或多条语句,表达式中可使用注释;
2) 支持多种数据类型,包括数值、布尔、字符串和日期;
3) 支持变量定义,表达式解析前和解析后能够设置和取得变量的值;
4) 支持函数运算,除默认的系统函数外,用户可使用自定义函数;
5) 实现了对if-else分支结构的解析;
6) 能够对语句中出现的词法错误和语法错误给出提示并定位。
简单使用示例,具体参见downloads中的文档:
Expression expression = new Expression("a +1;");//创建表达式
expression.initVariable("a", 1);//设置变量值
Valuable result = expression.reParseAndEvaluate(); //执行,返回结果
取得数值结果可调用:
result.getNumberValue(),返回BigDecimal,结果为2
评论
IKExpression表达式解析执行器
IK-Expression是一个开源的(OpenSource),可扩展的(Extensible),基于java语言开发的一个超轻量级(Superlightweight)的公式化语言解析执行工具包。IK
IKExpression表达式解析执行器
0
SimpleEL表达式解析引擎
SimpleEL是一个表达式解析引擎。它将表达式解析分成四个部分:预处理、编译、缓存和执行。这四个步骤任意一部分都可以替换,类似设计模式中的TemplateMethod。缺省的实现是:将表达式处理成J
SimpleEL表达式解析引擎
0
parboiledJava表达式语法解析库
parboiled是一个纯Java库提供了一种轻量级,易于使用,功能强大和优雅的PEG(解析表达式语法)分析设施。你定义的Java源代码的语法规则,直接,没有必要专门编写和维护,外部语法文件。同时保持
parboiledJava表达式语法解析库
0
IK Expression表达式解析执行器
IKExpression是一个开源的(OpenSource),可扩展的(Extensible),基于java语言开发的一个超轻量级(Superlightweight)的公式化语言解析执行工具包。IKE
IK Expression表达式解析执行器
0