IBM ODM:如何定义规则以仅验证字符串中的数值

IBM ODM : How to define rule to validate only numeric values in a String

我是 IBM ODM 的新手,我得到了一组要在 IBM ODM 规则设计器中设计的规则。 我设法编写了简单的 If else 和条件规则,但我对如何在 IBM ODM 中编写与正则表达式相关的规则感到震惊。有人可以帮忙吗? 我的 XOM class 的成员变量是一个字符串,我需要验证它是否只包含数字并且长度为 8 个字符。

作为 ODM/JRules 的长期用户,我认为这不是对业务规则的高价值使用,并且从长远来看 运行 这些规则将不值得。

话虽如此,编写几个 BOM 或 XOM 方法来执行您想要的操作应该很容易。

boolean containsOnlyNumbers(String string) {} 语言化:“{0} 仅包含数字”

int length(String string, int length) {} 语言化:“{0} 的长度为 {1} 个字符”

将这些方法定义为静态的,在您想要的任何 class 上,也许是专门为它们创建的实用程序 class。用 Java 代码填充方法主体以完成显而易见的事情。然后用语言表达它们,以便您的规则读起来很好:

如果 X 仅包含数字且 X 的长度为 8 个字符,则