Windows 7上的gvim 7.4 - 多行匹配

时间:2013-12-19 12:12:01

标签: vim

我正在寻找一种在gvim中搜索或匹配多行的方法。我在Windows 7(64位)上使用gVim 7.4(32位)。

这就是我想要实现的目标。

说我有这样的文字:

20000000c9abdcef10000000c9abcdef
20000000c9ababefab10000000c9ababefab
20000000c9cdcded10000000c9cdcded
20000000112233aa10000000112233aa
some random text line here 
20000000c9abdcef10000000c9abcdef
20000000c9ababefab10000000c9ababefab
20000000c9cdcded10000000c9cdcded

我只需要突出显示的单词“20000000c9abdcef10000000c9abcdef”后跟一个新行,然后再单词“20000000c9ababefab10000000c9ababefab”后跟一个新行和单词“20000000c9cdcded10000000c9cdcded”。 我通过执行Vblock选择选择20000000c9abdcef10000000c9abcdef,20000000c9ababefab10000000c9ababefab和20000000c9cdcded10000000c9cdcded。然后我猛拉它,然后我点击“/”,以便我处于命令搜索模式(我希望它是什么叫它)。然后我按下Crtl + r,它放置一个“旁边的/它看起来像/”,然后我再次输入。如果我有一行文字,它会被粘贴在那里,但如果我有多行,这些线一个接一个地粘贴,它们之间有一个^ M.所以这就是它的样子:

~
~
~
~
/20000000c9abdcef10000000c9abcdef ^M20000000c9ababefab10000000c9ababefab ^M20000000c9cdcded10000000c9cdcded

前四个tildas只是给上面的输出一个gvim看起来。 现在,当我按Enter键时,它不会搜索/突出显示三行。

我很确定我做错了什么。如果有人可以提供帮助,我将非常感激。

此致

PMU

2 个答案:

答案 0 :(得分:1)

改为:

/apples\noranges\npeaches

修改

好吧,如果你真的想这样做,你可以先做一下,然后:

:let @"=substitute(@",'\n','\\n','g')

然后

/<c-r>"

如果经常这样做,请创建映射。

答案 1 :(得分:0)

我的SearchHighlighting plugin将内置的普通模式*命令扩展为可视模式,并自动将换行符转换为正确的\n个原子。 (插件页面包含提供相同插件的替代插件的链接。)