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

JavaScript正则:如何移除字符串首个[与末个]间内容提取目标URL?

解决方法

你的问题出在原正则的匹配逻辑上:[^\]]*只会匹配到第一个]就停止,没法处理[]内部嵌套的](比如你字符串里图片标记的]),所以替换后会留下多余的)](部分。

要移除第一个[到最后一个]之间的所有内容,直接用贪婪模式的正则即可:

const original = '[Abc ![](https://i.imgur.com/5AteeJf.png)](https://quiz.com?/quiz_id=2/quiz_name=15/level=null)';
const result = original.replace(/ *\[.*\]/, '');
// result 就是目标URL:https://quiz.com?/quiz_id=2/quiz_name=15/level=null

原理说明

  • *:匹配前面可能存在的空格(和你原正则的逻辑一致)
  • \[:匹配第一个[
  • .*:贪婪匹配任意字符(会一直匹配到最后一个]才停止)
  • \]:匹配最后一个]

整个正则会精准匹配从第一个[到最后一个]的完整区块,替换为空后就得到你要的URL。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 22:31:15