一个java 的计算字符串表达式的组件
官方站点:http://www.japisoft.com/formula/
贴一下支持的操作符:
FormulaOperators
:
Type
|
Operator
|
Example
|
Numerical operators
|
+ - * / : Basic operators
% : Modulo
operators (not in high precision
)
^ : Power operators
(not in high precision
)
|
(-1 + 50*2 ) / ( 2^4 ) |
Boolean operators
|
~, xor : operators
&&, and : And
operators
||, or : Or operators
!, not : Not operators
< : less
operator
> : great operator
<= : less or equal operator
>= :
great or equal operator
==, equals : equal operators
!=, <> : not
equal operators
|
!(A && (B < 10)) | NOT ( A XOR ( B
equals C ) )
A != 2 || B > 2
"string1" == "string2"
A or B
A or (
B <> C )
|
String
operators
|
== : 2 strings equals
!= : 2 strings not
equals
<> : 2 strings not equals
< : The first string less
lexically than
the second one
> : The first string great lexically
than
the second one
<= :The first string less or equals lexically than
the second one
>= : The first string great or equals lexically than
the second one
+ : Concat string
|
"string1" == "string2" : false
"string1" +
"a" : "string1a"
"abc" > "aaa" : true
"zyx" < "bcd" : false
|
List operators
|
+ : Concat two lists
- : Substract a list to
another one
in : Test if an element is inside a list
|
(1,2)+(3,4) = (1,2,3,4)
(1,2) + 3 =
(1,2,3)
3+(1,2)=(1,2,3)
(1,2,3,4)-(3,4)=(1,2)
(1,2,3,4)-3=(1,2,4)
2
in (1,2,3)=true
4 in (1,2,3)=false
|
Other operators
|
= : set a variable operator
[] : absolute
value
² : power 2 operator
% : Percent operators
|
A = [ 2 - A ] * 2
2²
10%=0.1
|
Conditional operators
|
if then
if then else
|
if ( A > 2 ) then "Ok"
if ( A <=2 )
THEN B=3 else B=4
|
分享到:
相关推荐
java中求字符串表达式的值看起来很伤脑筋,但如果你用BeanShell,一切都变得很简单。
自己写的一个计算字符串表达式工具类; Java 工具类, 计算字符串表达式, 支持 +,-,*,/,%. ()
代码均为自己设计所写,分享一下。 字符串数学表达式(含括号)计算值 如: "31+3*3-20/2*5+40/8+4*5" ((2*(19-13*(1+2)/39)/6+4)-5)/5+((2+3)*2-5)
之前上传过一版本,但功能不强不能计算 boolean. 现在更新了下; 现支持运算符:*,/,%,+,-,<,>,!=,,==,,>=,&&,||,!,() 例如: "!true||7>-4&&-(5*6-20)>1==false" , 结果为: true "!(true||false&&true)" , 结果为: ...
java正则实现解析算术表达式 (仅限+-*/和括号)
个人收集的几种将字符串表达式转换为计算公式的方法。
功能:给出一个字符串表达式(可以是任意复杂的字符串表达式),计算字符串表达式的值. 特性: 1:用户可以添加其它运算符号 ,也就是说用户可以制定新的运算符,引擎中不存在的运算符号,当然具体的运算类...
java语言写的计算器源码和软件,计算器可以计算带括号的表达式,考虑到了各种特殊情况,比普通计算器功能强大
《文本计算器》字符串转数学表达式,如替换变量前:(a+b+2)+x*3+1 替换变量后:(3+2+2)+4*3+1 计算结果:20
利用逆波兰法球表达式的值,java和c++版的,只能计算带小数点和括号
结合字符串和数组,编程实现计算表达式(1+2)(1+2^2)*……*(1+2^100)的结果
一道经典题目,计算一个String型的表达式的值
说某个字符串匹配某个正则表达式,通常是指这个字符串里有一部分(或几部分分别)能满足表达式给出的条件。 在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述...
通过java计算字符串表达式的小工具,支持算术运算符、比较运算符等,支持字符串的计算比较等,更重要的是支持java bean的层层取值,如“a.b.c”。 小巧快速。
这是使用java写的对于一个数学表达式字符串的分析与求解,使用的是int类型,对各种正确的输入都能有正确的输出,使用了stack来解决,希望能对大家有所帮助
表达式接口:获取字符串方程的值。 最初取自 StackOverflow。 由 StackOverflow 用户编写的代码:Boann 和 由 StackOverflow 用户编写的代码:Mike Scholtes Boann 的代码是免费的 但被我广泛修改。 输入:Java 字符...
还可以实现输入条件,和参数,计算出结果 Map,Object> m = new HashMap,Object>(); m.put("v", 1910);//放入参数 List<Info> infos = new ArrayList(); infos.add(new Info("v,"ceil(v/100)*10000")); //条件和...
字符串类型的数学表达式 不用解析 直接得出结果 public class IllegalExpressionException extends RuntimeException { private static final long serialVersionUID = 7941685726759058059L; public ...
评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1) 匹配空白行的正则表达式:ns*r 评注:可以用来删除空白行 匹配HTML标记的正则表达式:<(S*?)[^>]*>.*?|*? /> 评注:网上流传...