张三丰Tomcat 2022-08-23 11:07 采纳率: 100%
浏览 121
已结题

Drools 正则表达式匹配不准

Drools matches 匹配标准java正则表达式不准确

Drools matches 匹配正则表达式未命中,但是java的正则表达式会命中,请问知道是什么原因吗?

Drools 版本号:6.3.0.Final

正则表达式语法:

(?:(?:万)[\s\S]{0,12}(?:六))

匹配的文本内容:因为他总共还有好几万没有处理他这一期六千块钱的话

采用java语言正则表达式可以匹配命中:

System.out.println(Pattern.compile("(?:(?:万)[\\s\\S]{0,12}(?:六))").matcher("因为他总共还有好几万没有处理他这一期六千块钱的话").find());

使用drools标准语法匹配未命中
this["text"] matches "(?:万[\\s\\S]{0,12}(?:六))"

drools正则表达式感觉是默认加上了正则表达式 ^ 开头,如果文本内容改成上面正则表达式 “万” 开头就可以命中,请问这是一个bug吗?还是我的使用有问题呢?
如何才能让Drools正则表达式和java的正则表达式一样命中上面的语法呢?
  • 写回答

1条回答 默认 最新

  • 爱吃苦瓜的猿 2022-08-23 11:43
    关注

    你显示的加上^或者*号用来区分是否必须从头开始匹配

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 8月31日
  • 已采纳回答 8月23日
  • 创建了问题 8月23日

悬赏问题

  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化
  • ¥15 Mirare PLUS 进行密钥认证?(详解)
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证
  • ¥20 想用ollama做一个自己的AI数据库
  • ¥15 关于qualoth编辑及缝合服装领子的问题解决方案探寻
  • ¥15 请问怎么才能复现这样的图呀