如何使用搜索命令搜索点字符?

Luc*_*hez 17 vim replace

我正在尝试在Vim中使用搜索命令:

:Rs/F/T/X

R = range
F = text to find
T = text to replace with
X = options
Run Code Online (Sandbox Code Playgroud)

但是,当我想搜索"."时.(点字符)我遇到了一些问题.

任务:替换所有出现的"." (空格点)为">"(大于)

所以,首先我尝试了这个:

:%s/ ./>/g
Run Code Online (Sandbox Code Playgroud)

但这改变了我所有的"." (空格ANY-CHARACTER)到">"字符.

然后我记得点字符是一个特殊字符,所以我尝试了这个:

:%s/ \./>/g
Run Code Online (Sandbox Code Playgroud)

但是vim 却给我一个错误:E486找不到模式"\".

最后我尝试了这个疯狂的事情:

:%s/" ."/>/g 还有这个 :%s/" \."/>/g

但我得到了相同的结果:E486无法找到模式......

那么,如何使用搜索命令搜索点字符?

PS:抱歉我的英语不好.

Ben*_*ein 16

空格和点都是特殊字符.试试这个:

:%s/\s\./>/g
Run Code Online (Sandbox Code Playgroud)

更新:\ s用于表示所有空白字符(空格,制表符,换行符),而不仅仅是空格.

  • 从什么时候开始是一个特殊的角色?`:%s /\./>/g`对我来说很好.你实际上是通过使用`\ s`来修改搜索来包含其他类型的空格,而不仅仅是空格. (6认同)
  • @lk:我的猜测是你的空格字符不是空格字符而是标签. (2认同)