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

正则表达式问题:移除{到:及:到}间内容的正确写法

解决正则表达式匹配范围过大的问题

你遇到的问题其实是正则里的贪婪匹配在搞鬼!之前用的/:.*}/g中,.*是贪婪模式,它会从第一个:开始,尽可能多地匹配字符,直到碰到最后一个}才停下,所以才会把后面所有内容都吃掉,只留下{category}。

给你两种靠谱的解决方案:

方案一:使用非贪婪量词

正则表达式写成:

/:.*?}/g

这里的.*?是非贪婪模式,它会匹配到第一个}就停止,不会跨到后面的},刚好符合你要移除每个:到对应}之间内容的需求。

方案二:使用否定字符集

如果觉得非贪婪量词不够直观,也可以用否定字符集来精准匹配:

/:[^}]+}/g

[^}]表示匹配任何不是}的字符,这样只会匹配当前:到同个{}块里的},绝对不会越界到后面的块。

验证效果

原字符串:

{category:-}{product}-{rewrite:/}{/:controller}

用上面任意一种正则替换为空字符串后,都会得到你想要的结果:

{category}{product}-{rewrite}{controller}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 03:52:49