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

如何用正则从两种格式的URL中提取指定子串?

正则表达式解决方案

可以使用以下正则表达式提取目标子串:

(?<=/a[-/])[^=]+

解释:

  • (?<=/a[-/]):正向肯定后行断言,匹配/a后紧跟-或/的位置,同时覆盖/a-/和/a/两种前缀格式。
  • [^=]+:匹配任意非=的字符序列,直到遇到第一个=为止,正好对应需要提取的目标子串。

兼容性替代方案(捕获组方式)

如果你的正则引擎不支持后行断言(比如旧版本JavaScript),可以用捕获组实现:

/a[-/]/([^=]+)

提取结果时取第一个捕获组的内容即可。

验证示例

对两种目标URL测试:

  1. 输入:https://lh3.googleusercontent.com/a-/ACB-R5TGDRSAuE76Tt1ZPa5qPv9cp23QLaJfni84B7MXrcI=s120-c-c0x00000000-cc-rp-mo-br100
    提取结果:ACB-R5TGDRSAuE76Tt1ZPa5qPv9cp23QLaJfni84B7MXrcI
  2. 输入:https://lh3.googleusercontent.com/a/ACB-R5TGDRSAuE76Tt1ZPa5qPv9cp23QLaJfni84B7MXrcI=s120-c-c0x00000000-cc-rp-mo-br100
    提取结果:ACB-R5TGDRSAuE76Tt1ZPa5qPv9cp23QLaJfni84B7MXrcI

原正则的问题

你之前使用的(?<=/a/)(.*?)=仅匹配了/a/前缀的情况,没有覆盖/a-/的格式,因此无法处理第二种URL。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 21:37:17