You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

正则匹配文本块时如何排除末尾由连续等号组成的分隔模式

正则匹配排除末尾连续等号分隔符的解决方案

核心解决思路是利用正向前瞻断言做边界限制,同时调整匹配规则为非贪婪模式,既保留文本块内部的单个等号、=>等合法内容,又不会把末尾的连续等号分隔符纳入匹配结果。

修改后的正则表达式

(\d{2}-\d{2}-\d{4} \d{2}:\d{2}) (.*?)(Statut)([\s\S]*?)(?=\n={2,})

改动说明

  • 将原正则中第二组的.*改为.*?:开启非贪婪匹配,避免用户名部分异常吞噬后续的Statut标识
  • 将原正则最后一组的字符集贪婪匹配改为[\s\S]*?:[\s\S]匹配所有字符(包含换行符,适配多行文本块需求),加?开启非贪婪模式,匹配到分隔符边界就停止
  • 末尾新增(?=\n={2,})正向前瞻断言:要求匹配内容的后置边界为「换行+至少2个连续等号」,断言属于零宽匹配,不会被计入最终的捕获结果,自然排除了末尾的等号分隔符

如果你需要保留原有的字符范围限制,也可以把[\s\S]*?替换回你原来的[,:. aA-zZ0-9À-ÖØ-öø-ÿ=><\n\r]*?,只要保留末尾的非贪婪标记?和正向前瞻断言即可。

内容的提问来源于stack exchange,提问作者Broshet

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 23:57:03