2012-12-02 38 views
2

我有两个文本文件,一个是我目前正在使用的文件,另一个是字典。我想要做的是使用后者作为输入来搜索第一个。我想突出显示所有匹配的行。基于外部文件搜索亮点

例如为:

File1中:

I like eggs 
I like meat 
I don't like eggplant 
My mom likes chocolate 
I like chocolate too 

文件2:

meat 
chocolate 

在这个例子中的那些线应当强调:

I like meat 
My mom likes chocolate 
I like chocolate too 

回答

1

该方法与我给您的related question的答案类似:使用readfile(),join()将这些行连接到某个模式,然后使用:match

下面我将如何建立这个交互的命令行:

:match Search /.*\%(<C-R>=join(readfile('file2'), '\|')<CR>\).*/<CR> 

注意,这个快速的单行忽略了错误处理,正则表达式逃逸等。你需要经常做这种情况下,我建议你把它变成一个自定义的命令,就像我在链接的答案中显示的那样。

+0

太好了。非常感谢! – user1871021