java - 流口水:不区分大小写比较?

标签 java drools

我需要以不区分大小写的方式比较两个字段。我有一个这样的规则:

foo : ObjectTypeA()
bar : ObjectTypeB( name == foo.name )

这适用于大小写相同的字符串。我需要的是这样的东西,但它似乎不起作用:

foo : ObjectTypeA()
bar : ObjectTypeB( name.equalsIgnoreCase( foo.name ) )

关于如何让它发挥作用有什么建议吗?谷歌搜索找到了使用“匹配”的建议,但匹配运算符似乎只适用于硬编码模式。

最佳答案

使用评估。 equalsIgnoreCase 方法在您的示例代码中也有一个拼写错误。

bar : ObjectTypeB(  eval( name.equalsIgnoreCase( foo.name ) ) )

如果你想使用类似的东西:

ObjectType( name equalsIgnoreCase foo.name )

您可以查看 Drools 自定义运算符。例子: http://members.inode.at/w.laun/drools/CustomOperatorHowTo.html

关于java - 流口水:不区分大小写比较?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4825207/

相关文章:

java - 使用 jdbc 从数据库中按列检索值

java - Android SQLite CREATE TABLE 语法错误

java - 检查列表的所有元素(Drools 专家)

drools - 为什么我们在 '==' 比较中指定变量的顺序很重要?

state - Drools是映射业务规则/逻辑的最有效方法吗?

java - 使用唯一的字符串设置默认适配器

java - 没有接口(interface)方法setExtras

drools - 如何迭代 drools 文件中的 List<HashMap> 并更新 Hash Map 对象并返回更新后的 List

java - JAVA 的 Sigar API(需要指南)

drools - Drool 无法正确对数字进行排序