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

如何在Vim中完成指定的带括号内容查找替换操作?

Vim 文本替换实现方案

直接使用带捕获组的正则替换命令即可完成需求,命令如下:

:%s/^\s*,*\[\(\w\+\)\]/& = @\1

各部分含义:

  • ^:匹配行首位置
  • \s*:匹配行首任意数量的空白字符(包含制表符)
  • ,*:匹配行首任意数量的逗号(允许0个)
  • \[:匹配左方括号(因方括号是正则特殊字符,需转义)
  • \(\w\+\):捕获方括号内的单词内容(如One、Two),作为第一个捕获组
  • \]:匹配右方括号
  • &:指代整个匹配到的原行内容(比如 [One]或 ,[Two])
  • = @\1:在原内容后追加指定格式文本,\1调用之前捕获的方括号内的内容

替换前后对比

原文本:

[One]
,[Two]
,[Three]

替换后文本:

[One] = @One
,[Two] = @Two
,[Three] = @Three

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 01:51:15