一个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 工具类, 计算字符串表达式, 支持 +,-,*,/,%. ()
"Java 中运行字符串表达式的方法" Java 中运行字符串表达式的方法是 Java 开发者经常遇到的需求,通常情况下,...RunnerUtil 是一个功能强大且灵活的字符串表达式计算引擎,能够满足 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编程语言中,处理字符串和正则表达式是一项常见的任务。正则表达式是一种强大的文本模式匹配工具,可以用于搜索、替换或者提取符合特定规则的字符串。在本篇文章中,我们将深入探讨如何利用Java中的Xeger和...
java正则实现解析算术表达式 (仅限+-*/和括号)
在Java中,处理这种需求通常涉及到解析和计算字符串形式的数学表达式。这个压缩包文件包含了多种资源,可以帮助我们理解并实现这一功能。 首先,"jd-gui.exe" 是一个Java反编译器,它可以将已编译的Java字节码(....
从给定的文件标题“字符串转换为计算公式的若干种方法”及描述“个人收集的几种将字符串表达式转换为计算公式的方法”中,我们可以看出文章主要探讨的是如何将文本形式的数学表达式(字符串)转化为可以进行计算的...
在编程领域,字符串表达式解析求值算法是一种关键的技术,尤其在计算器应用、脚本语言或者自定义计算逻辑实现中非常常见。这个算法的核心任务是将由字符组成的字符串转换为可执行的数学表达式,同时处理变量和各种...
总结起来,将字符串转换为`lambda`表达式是编程中的一种高级技巧,尤其在动态计算和用户交互的场合中非常有用。通过使用`ast`模块,我们可以安全地实现这个功能,避免了`eval()`和`exec()`带来的潜在风险。同时,...
总结来说,这个Java实现的简易算术表达式解析类是一个基础但实用的工具,它可以处理简单的数学问题,帮助开发者在不使用现成的解析库的情况下,快速实现对字符串表达式的计算功能。通过学习和理解这个实现,开发者...
解析器负责读取输入的字符串表达式,识别其中的运算符和操作数,并调用对应的运算方法。这可能涉及到词法分析和语法分析的过程。例如,可以使用递归下降解析器或者更复杂如ANTLR这样的库来解析表达式。 4. **注册...
ExpressionJ的核心功能是解析用户提供的字符串形式的算术表达式。它可以处理包含加法、减法、乘法、除法、括号以及各种运算优先级的表达式。例如,`2 * (3 + 4)` 这样的表达式可以被正确解析并计算出结果。 ### 2. ...
在 Java 中,字符串匹配可以通过多种方式实现,例如使用正则表达式、哈希表、素数乘积等方法。 使用素数乘积实现字符串匹配 在本文中,我们使用素数乘积的方法来实现字符串匹配。该方法的思路是:首先将每个字母...
2. 解析表达式:调用`Parser`对象的`parse`方法,传入待解析的字符串表达式。 3. 求值表达式:解析完成后,使用`Evaluator`对象的`evaluate`方法来计算表达式的结果。 4. 处理变量和函数:如果表达式中涉及到变量...
在Java编程语言中,计算数学表达式是一项常见的需求,它涉及到字符串解析、语法分析和运算符优先级处理等多个环节。`jeval-0.9.4`是一个Java库,专门用于解析和评估数学表达式。这个库使得开发人员能够轻松地在程序...
3. 使用 Pattern 和 Matcher 类:使用 Pattern 和 Matcher 类可以实现复杂的字符串分割,例如按照正则表达式分割字符串。 知识点三:Java 中的字符串分割算法 在本例中,我们使用了 substring() 方法将输入字符串...
总结起来,Java中的Cron表达式解析涉及到字符串处理、时间计算以及用户界面交互。通过使用Java Swing创建一个Cron表达式解析器,你可以提供一个直观的工具,帮助开发者更好地理解和使用这种强大的时间调度机制。同时...