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

求助:如何用正则匹配所有array<..>并将其中<>替换为[]?

解决思路与实现方案

核心是利用正则表达式精准匹配前缀为array的<>结构,再将其替换为[],具体步骤如下:

正则匹配规则

使用以下正则表达式定位目标结构:

array<([^<>]+)>

规则解释:

  • array<:精确匹配前缀字符串array<,确保只处理以array开头的尖括号结构
  • ([^<>]+):捕获组,匹配尖括号内的任意内容([^<>]+表示匹配除了<和>之外的所有字符,避免误匹配嵌套的尖括号)
  • >:匹配结尾的>

替换逻辑

将匹配到的内容替换为:

array[$1]

其中$1代表正则中捕获组匹配到的尖括号内的内容,这样就把<xxx>转换成了[xxx]。

示例验证

以你提供的输入文本为例:

输入:

<tr><td>Asdft array<object> tesnp array<int></td>
<td>asldhj
ashd
repl array<String>
array
asdhl
afe array<object>
endoftest</td></tr>

使用上述正则替换后,得到预期输出:

输出:

<tr><td>Asdft array[object] tesnp array[int]</td>
<td>asldhj
ashd
repl array[String]
array
asdhl
afe array[object]
endoftest</td></tr>

特殊情况说明

如果文本中存在嵌套的array<array<xxx>>结构,上述基础正则会失效,此时需要使用支持递归匹配的正则(不同语言/工具的写法略有差异,比如Python的regex库支持(?R)递归标记),示例正则可调整为:

array<((?:[^<>]+|(?R))+)>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 10:15:43