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

如何在TypeScript中基于正则表达式提取字符串指定模式内容

用正则提取[img ]模式中的URL

当然可以用正则表达式实现,核心是要对[和]这两个正则元字符进行转义(在前面加\),否则它们会被当作字符组语法处理,这也是你之前遇到困难的原因。

推荐正则表达式

针对你的需求,推荐使用:

\[img\s+(https?://\S+)\]

各部分说明:

  • \[img\s+:匹配以[img开头的片段,\s+匹配img后面的一个或多个空白字符(空格、制表符等)
  • (https?://\S+):捕获HTTP/HTTPS协议开头的URL,\S+匹配所有非空白字符(确保拿到完整的URL直到]前)
  • \]:转义后匹配闭合的]

示例代码(Python)

import re

input_text = "This is a string [img https://url.com/img.jpg]"
regex_pattern = r"\[img\s+(https?://\S+)\]"
match_result = re.search(regex_pattern, input_text)

if match_result:
    extracted_url = match_result.group(1)
    print(extracted_url)  # 输出:https://url.com/img.jpg

特殊情况处理

如果你的URL中包含空格(虽然不符合标准URL规范,但实际场景可能存在),可以改用非贪婪匹配来捕获]之前的所有内容:

\[img\s+(.*?)\]

这个表达式会匹配[img 之后、]之前的任意内容(包括空格),适配性更强。

内容的提问来源于stack exchange,提问作者K. W.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 22:20:34