我试过:s%/{//g
了:s%/\{//g
。如何在 vim 中查找和替换(实际上是删除)大括号?
谢谢。
编辑:我的意思是在 s 之前有 %,所以我可能只是输入错误。感谢大家的快速回复。
@chaos 的扩展
字符(即:左大{
括号,不要与括号[
或括号混淆(
)
......不需要转义。
您可能的意思是删除所有大括号。百分号应该在's'之前,而不是之后。这意味着在所有范围内执行搜索。
因此,只需执行以下操作:
:%s/{//g
:%s/}//g
全部做完!
您应该考虑阅读 VIM 范围。例如,要在当前行和最多 10 行下进行替换,您可以执行以下操作:
:.,.+10s/}//g
:s/{//g
工作正常。你到底为什么要把它放在%
后面s
?通过这样做,您将指示%
为您的正则表达式分隔符,这使您的模式的其余部分不起作用,因为它的编写就像/
您的分隔符一样。
哦,我明白了,你的意思是:%s/{//g
。
您应该在整个文件中替换它%
之前s
,不仅在当前行:
:%s/{//g