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

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 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题
  • ¥30 关于<main>标签页面跳转的问题
  • ¥80 部署运行web自动化项目
  • ¥15 腾讯云如何建立同一个项目中物模型之间的联系
  • ¥30 VMware 云桌面水印如何添加
  • ¥15 用ns3仿真出5G核心网网元
  • ¥15 matlab答疑 关于海上风电的爬坡事件检测
  • ¥88 python部署量化回测异常问题