1

在 Wso2 CEP v 3.1.0 中,我必须在这种情况下使用 isMatch 函数。

from in_put[isMatch('^123|^234|^345', a)]
select b,c
insert into out_put1;

在输入流中,我有 3 个变量(a、b、c),a 变量是 9 位数字,我必须检查前 3 位数字。我有 3 个不同的号码要检查。

我在这个站点-> http://regexr.com/中检查了这个正则表达式 ,它运行良好。当输入流像 1234456 时,该站点上的正则表达式运行良好,但 CEP 中的相同情况不起作用。在 CEP 中仅适用于 123 或 234 或 345,但不是 123456、234567、345677。

有人,知道为什么吗?

4

2 回答 2

1

试试这个正则表达式:

from in_put[isMatch('^(123|234|345).*', a)]

因为isMatch正在尝试匹配完整的输入字符串。

于 2015-01-26T15:04:24.753 回答
0
(^123|^234|^345)[0-9]*$

试试这个。看演示。

https://www.regex101.com/r/rG7gX4/29

于 2015-01-26T15:09:35.380 回答