`
zhouzaibao
  • 浏览: 294143 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

获得字符串表示的布尔表达式的值

 
阅读更多

    在实际的开发中有些时候需要计算字符串表示的布尔表达式的值,如下面的情况

    String hh="3>5 && 7< 8";

    而这个时候我们要获得上诉表达式表示的布尔表达式为真或者假。

    在网上找了一下,其中有一个开源的ognl包可以实现这个功能。官网是www.ognl.org(现在好像打不开)

    具体的代码片段为

 

String myCondition="3>5 && 8<6";
Boolean con = (Boolean)Ognl.getValue(myCondition, (Object)null,Boolean.class);

    我的应用是在字符串中写入一个变量,然后替换变量的内容生成新的表达式,如 start> 5 && end < 6。然后替换start和end来计算boolean值

0
0
分享到:
评论

相关推荐

    java 字符串 正则表达式 详细实例代码

    - `contains(String str)`:判断字符串是否包含指定子字符串,返回布尔值。 - `lastIndexOf(String str)`:查找子字符串最后一次出现的位置。 - `startsWith(String prefix)`和`endsWith(String suffix)`:检查...

    C#字符串和正则表达式参考手册.pdf

    例如,假设有一个字符串变量myInput包含了电子邮件地址,使用正则表达式可以简洁地检查该地址是否符合预期的格式,并返回一个布尔值表示匹配成功与否。如果没有正则表达式,类似的检查可能需要编写许多行代码才能...

    布尔表达式的语法分析及语义分析程序设计

    布尔表达式是计算机科学中的一种基础概念,主要用来表示逻辑关系。在编程语言中,布尔表达式常用于条件判断和逻辑运算。本篇文章将详细探讨布尔表达式的语法分析与语义分析程序设计,并以LR分析法为例进行阐述。 ...

    Python-Synopsis一个用于使用布尔表达式的Pythonic工具包

    - `Expression`类:表示布尔表达式,支持字符串、字节串或已有的布尔表达式对象初始化。 - `TruthTable`类:用于构建和操作真值表,可以计算表达式在所有可能输入下的结果。 - `simplify`函数:对布尔表达式进行...

    编译原理布尔表达式计算器

    Flex会根据这些规则生成C代码,该代码读取输入字符串并生成相应的标记流。 **二、Yacc与语法分析** Yacc是另一个编译器工具,用于生成语法分析器。它依据巴科斯范式(BNF,Backus-Naur Form)描述的上下文无关文法...

    shell脚本写法:复杂数学式,字符串,布尔值,case写法

    使用双圆括号进行数学表达式和复合布尔值的处理,以及双方括号进行字符串匹配,能够帮助我们写出既清晰又高效的脚本代码。而case语句提供的模式匹配功能,可以方便地实现复杂条件下的分支处理。掌握这些知识点,对于...

    Go-Brenda是一个用于GoAST的布尔表达式解算器

    1. **解析器(Parser)**:这是项目的核心部分,它接收一个字符串形式的布尔表达式,并将其转换为AST表示。解析器需要正确处理各种逻辑和比较运算符,确保语法正确性。 2. **AST结构**:解析后的布尔表达式会被转化...

    zhanghui.rar_布尔表达式

    通过将布尔表达式转化为逆波兰表达式,我们可以简化计算过程,使得表达式的求值更高效,同时也方便了程序的实现。 总的来说,这个项目可能涉及到的知识点包括:布尔代数、布尔表达式、语法分析、逆波兰表达式、栈...

    求解布尔表达式的真值

    中缀转后缀表达式函数chpost成员功能Inorder[]存储输入的字符串栈czf用以暂时存放运算符Post[]用来存储结果后缀表达式求真值yunsuan成员功能布尔表达式中缀转后缀函数chpost1.建立栈czf用以存储逻辑运算符,2.建立...

    VB_NET字符串和正则表达式参考手册

    `Regex.IsMatch(input, pattern)`返回一个布尔值,表示输入字符串是否符合模式要求。 在实际开发中,理解和熟练运用VB.NET的字符串处理和正则表达式功能,能极大地提升代码的效率和灵活性,解决各种复杂的数据处理...

    LL(1).rar_LL_LL语法分析_LL(1)_布尔表达式_语法分析

    布尔表达式的语法分析旨在将输入的字符串转换成抽象语法树(AST),以便计算机能理解并执行这些逻辑运算。 在LL(1)解析布尔表达式时,我们需要定义一套适当的文法规则。例如: 1. `布尔表达式` → `非布尔表达式` ...

    Python字符串与正则表达式学习笔记

    在Python编程语言中,字符串和正则表达式是两个非常重要的概念,广泛应用于数据处理、文本分析和信息提取。下面是对这两个主题的详细说明。 ### 1. 数值与布尔型 在Python中,数值类型主要包括整型(int)和浮点型...

    rdlc报表表达式应用(字符串和转换)

    本文将详细介绍rdlc报表表达式在字符串和转换方面的应用,包括格式化字符串、日期和数字的函数、返回子字符串的函数、显示多值参数的所选值的函数、转换函数和决策函数等。 一、格式化字符串、日期和数字的函数 在...

    expression-evaluator:评估数学,字符串和布尔算术表达式

    概述这是一个用C#编写的项目,将使用给定的数学,字符串或布尔表达式,使用称为EE表达式的内置语言模板对其进行评估。 语言模板是Expression Evaluator在定义数学运算符,字符串和布尔运算符(如'+','-','||'等)...

    C# 逻辑表达式解析器源码

    对四则混合运算做了些扩展,增加了关键字,表达式最终还是返回一个运算值。 支持操作数:int、double、bool、datetime、string 支持关键字:IF、AND、OR、NOT、TRUE、FALSE、ToString、ToDateTime、ToInt、ToDouble...

    C语言检测字符串是否为json字符串

    4. 键必须是双引号`"`包围的字符串,值可以是字符串、数字、布尔值、null、对象或数组。 5. JSON字符串不允许有注释,所有的字符都必须有意义。 `json_checker()`函数可能会通过以下步骤来验证一个字符串是否为JSON...

    python-boolean:一些方便的工具,用于解析布尔字符串,以及从布尔字符串获取最小乘积

    在自由许可下,一些简洁的函数可以读取表示布尔表达式的字符串并返回各种方便的形式。 它使用进行繁重的解析,并使用George Prekas根据Robert Dick和Pat Maupin的代码(全部包含在qm.py )编写的Quine-McCluskey...

    JavaScript判断一个字符串是否包含指定子字符串的方法

    另外,值得注意的是,ES6中引入了`includes`方法,它直接用于判断一个字符串是否包含另一个字符串,并返回一个布尔值: ```javascript const a = 'Hello world'; const b = 'Hello'; console.log(a.includes(b)); ...

    java验证字符串是否符合json格式

    5. 值可以是字符串、数字、布尔值、null、对象或数组。 6. 字符串也必须用双引号包围。 在Java中,我们可以利用现有的库如Jackson、Gson或org.json等来实现JSON字符串的验证。这里以`org.json`库为例,给出一个简单...

    Java字符串类型转换

    3. **从布尔值到字符串**:`String.valueOf(Boolean b)` 可以将布尔值转换为字符串,其中`true`转换为`"true"`,`false`转换为`"false"`。 #### 二、字符串到其他类型的转换 1. **从字符串到整型**:`Integer....

Global site tag (gtag.js) - Google Analytics