您将如何在 vim 中搜索以下字符串?
http://my.url.com/a/b/c
我试过(非常无魔法)
:/\Vhttp://my.url.com/a/b/c
但它给了我:
E492 not an editor command: /\Vhttp://my.url.com/a/b/c
你会认为有一种简单的方法可以从字面上搜索字符串......我对斜线转义每个斜线或编写复杂的搜索不太感兴趣,因为我必须在文本文件中快速搜索不同的 URL。
您将如何在 vim 中搜索以下字符串?
http://my.url.com/a/b/c
我试过(非常无魔法)
:/\Vhttp://my.url.com/a/b/c
但它给了我:
E492 not an editor command: /\Vhttp://my.url.com/a/b/c
你会认为有一种简单的方法可以从字面上搜索字符串......我对斜线转义每个斜线或编写复杂的搜索不太感兴趣,因为我必须在文本文件中快速搜索不同的 URL。
我不知道你为什么会得到not an editor command
,因为我没有。无需转义斜杠即可进行搜索的最简单方法是?
改用,例如
:?http://my.url.com/a/b/c
" or since the : is not necessary
?http://my.url.com/a/b/c
这确实在另一个方向搜索,所以请记住这一点
另一种向前搜索(从光标位置)而不转义的方法是使用:s
命令。
你可以这样做:
:%s@http://my.url.com/a/b/c@@n
然后按n
向前、N
向后 导航匹配的文本
如果您想知道缓冲区中有多少匹配项,请使用gn
而不是n
请注意,我说的是“不转义”,我说的是斜线,如果要精确搜索,则必须转义句点。.
. 因为在正则表达式中,.
表示任何字符。
也可以直接设置搜索寄存器。
:let @/='\Vhttp://my.url.com/a/b/c'
然后你就可以正常使用n
了N
。
使用 MacVim(或 GVim)。使用打开非正则表达式 GUI 搜索⌘</kbd>f (or ctrlf on Windows). This is the recommended way to do a non-regex search in Vim. GUI Vim has many improvements over terminal vim like this one and I would highly suggest using it full time if you aren't already.
在 vim 中搜索只是/
,不是:/
。您可以搜索仅转义斜杠的字符串:/http:\/\/my.url.com\/a\/b\/c