6

您将如何在 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。

4

5 回答 5

9

我不知道你为什么会得到not an editor command,因为我没有。无需转义斜杠即可进行搜索的最简单方法是?改用,例如

:?http://my.url.com/a/b/c
" or since the : is not necessary
?http://my.url.com/a/b/c

这确实在另一个方向搜索,所以请记住这一点

于 2013-05-14T22:45:28.223 回答
3

另一种向前搜索(从光标位置)而不转义的方法是使用:s命令。

你可以这样做:

:%s@http://my.url.com/a/b/c@@n

然后按n向前、N向后 导航匹配的文本

如果您想知道缓冲区中有多少匹配项,请使用gn而不是n

请注意,我说的是“不转义”,我说的是斜线,如果要精确搜索,则必须转义句点。.. 因为在正则表达式中,.表示任何字符。

于 2013-05-14T23:09:16.437 回答
0

也可以直接设置搜索寄存器。

:let @/='\Vhttp://my.url.com/a/b/c'

然后你就可以正常使用nN

于 2013-05-15T00:41:01.067 回答
0

使用 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.

于 2015-12-07T21:56:09.510 回答
-1

在 vim 中搜索只是/,不是:/。您可以搜索仅转义斜杠的字符串:/http:\/\/my.url.com\/a\/b\/c

于 2013-05-14T22:47:26.253 回答