使用Sublime 3在多个文件中搜索多个字符串

时间:2014-09-05 15:23:41

标签: sublimetext sublimetext3

我知道如何使用Sublime 3在几个文件中搜索单个字符串(解释为here)。

我需要做的是在多个文件中搜索多个字符串。 我试过去Find in files并设置:

Field:  string1 \& string2
Where: /path_to_folder_containing_the_files_I_want_to_ search/

(其中string1string2是我想要搜索的字符串),但这似乎不起作用。

这可以完成吗?

4 个答案:

答案 0 :(得分:33)

刚刚遇到这个老问题,我想我会添加我的解决方案,这可能对将来的某些人有用。

Sublime支持在所有打开的文件夹中搜索,并且可以使用正则表达式。因此,利用这两者,您可以打开或添加要搜索到项目的所有文件夹,并使用正则表达式搜索多个关键字。在您的情况下,它将是以下(确保检查正则表达式框.*图标):

Find: (string1|string2)
Where: <open folders>

答案 1 :(得分:2)

我用这个:

选中正则表达式

Find: (string1.*string2)

Where: *.php

答案 2 :(得分:0)

不,你只能在Sublime中一次搜索一件事,就像我所知道的其他大多数编辑一样。唯一可行的方法是使用正则表达式搜索(在输入搜索词时单击字段最左侧的按钮),然后找到一个匹配您正在寻找的所有内容的正确的正则表达式。或者,您可以一次只搜索每个匹配项。

作为替代方案,请考虑使用标准命令行文本处理实用程序,例如grepsedawk等。将它们的强大功能与shell的命令管道功能相结合你可以运行如下命令:

grep -e "foo" *.txt | grep -e "bar"

将搜索模式.txt的当前目录中的所有foo个文件,然后将再次搜索所有结果行以查找模式bar,以便最终输出将其中包含foobar,任何顺序。

答案 3 :(得分:0)

我在Sublime Text2上试过这个,所以也应该使用Sublime Text3。

字段:string1 string2 string3 string4 其中:/ path_to_folder_containing_the_files_I_want_to_ search /

注意:取消选中'。*'表示正则表达式并选中“”表示查找整个单词。

这将在上述文件夹中的所有文件中搜索“string1 string2 string3 string4”模式。