我想删除所有符合此正则表达式的方括号:\[.*\].*{
,但我只想删除方括号,而不是后面的内容-即,仅在方括号后跟一个后缀时,我要删除方括号和其中的内容打开花括号。
我该如何使用Vim的搜索/替换功能?
最佳答案
您可以使用\zs
和\ze
设置比赛的开始和结束。:%s/\zs\[.*\]\ze.*{//g
应该可以工作。
您告诉Vim用空字符串替换\zs
和\ze
之间的内容。
(注意,您需要在Vim二进制文件中编译+ syntax选项)
有关更多信息,请参见:help /\zs
或:help pattern
编辑:实际上,在这种情况下\zs不是必需的,但出于教育目的,我将其保留。 :)