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

如何编写正则匹配/keyword与前一个斜杠之间的目标字符串

问题原因

你之前编写的正则使用了贪婪匹配的.*,会尽可能匹配最长的符合规则的字符串,因此会从路径最开头的/开始匹配,直到/keyword前的位置,最终拿到了不符合预期的整段前缀内容。

解决方法

写法1:正向预查(直接拿到匹配结果,不需要额外取捕获组)

正则写法:

[^/]+(?=\/keyword)

如果要兼容你示例中keyword被<strong>标签包裹的情况,可以调整为:

[^/]+(?=\/<strong>keyword<\/strong>)

规则说明:

  • [^/]+:匹配所有不包含斜杠/的连续字符,天然限定了匹配范围只能在两个相邻斜杠之间
  • (?=\/keyword):正向肯定预查,限定前面匹配的内容后面必须紧跟着/keyword,确保我们拿到的是keyword前紧邻的一段路径

写法2:捕获组实现(兼容不支持正向预查的正则环境)

正则写法:

\/([^/]+)\/keyword

匹配后取第一个捕获组的内容即可得到目标字符串。

测试效果

对你给出的示例路径使用上述正则,最终匹配结果为:fb9c2b12-1496-4r01-b92b-30e848f3adbc,完全符合需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 06:18:04