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

正则表达式匹配:如何捕获目标组前最后一个模式而非第一个

精准捕获目标文本的正则解决方案

嘿,我懂你遇到的糟心事了——默认的贪婪匹配会让正则从第一个**就开始“乱吃”内容,直到找到YES后面的**,把前面一堆无关的内容也捎带进来了。咱们可以利用**作为分隔符的特点,加上YES的标记,写出精准匹配的正则:

推荐正则表达式

\*\*([^*]+YES)\*\*

为什么这个能生效?

  • \*\*:精准匹配目标文本前后的星号分隔符
  • [^*]+:匹配除了星号之外的任意字符,这样就不会跨到下一个**块里,完美限定在单个**包裹的内容范围内
  • YES:锚定我们要找的目标文本核心特征
  • 捕获组():会把**之间包含YES的内容抓出来,也就是你要的I SAID YES

如果你习惯用非贪婪匹配的写法,这个方案也能达到同样效果:

\*\*(.*?YES)\*\*

.*?是非贪婪模式,会匹配尽可能少的字符直到遇到YES,碰到下一个**就立刻停止,同样不会跨块匹配。

用这两个正则去匹配你的目标字符串,就能精准拿到I SAID YES啦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 06:22:40