首页 > 解决方案 > 替换模式并在数字周围添加方括号

问题描述

我正在尝试替换llr0所有tmpLLR[0]数字 [0-9]。所以llr7会去tmpLLR[7]

我已经尝试过:%s/llr[0-9]/tmpLLR\[&\]/gc,但这会产生tmpLLR[llr7]

标签: regexvim

解决方案


一种方法是将捕获的组放在转义括号中,并从\1\2开始访问捕获的值,

:%s/llr\([0-9]\)/tmpLLR\[\1\]/gc

如答案的评论部分所述, using\v似乎在其模式匹配中启用了一种魔术模式,您可以在其上执行

:%s/\vllr(\d)/tmpLLR\[\1\]/gc

推荐阅读