在Sublime

时间:2016-05-06 07:11:14

标签: sublimetext2

我经常使用Sublime Text 2的search all open files/folders功能(CMD + SHIFT + F)。

是否可以执行仅查询包含第一个搜索查询的文件的第二个搜索?

例如:Search 1找到包含“hello”的5个文件。 Search 2应该只查询那些相同的5个文件中的“world”,因此生成的匹配将是包含“hello”和“world”的文件。

我可以搜索结果缓冲区中可见的文本(例如下面的屏幕截图中),但我想搜索结果缓冲区中显示的所有文件的全部内容。

content-top clearfix

1 个答案:

答案 0 :(得分:-1)

1

使用 Ctrl + Shift + F 打开find_in_files面板。

在示例中,<open folders>用于Where:参数,但您可以使用符合初始搜索条件的任何内容。

Step1

2:

当您仍在结果缓冲区中时,使用 Ctrl + F 打开find面板。

输入^(/Users/.*)(?=:$)作为Find:参数,并确保已启用RegEx开关。此RegEx模式将匹配结果中的所有路径 ( Windows用户可以输入 ^(C:\\.*)(?=:$)

复制选定的路径。

Step2

3:

将复制的路径粘贴到空白文档中。

使用 Ctrl + H 打开replace面板。

输入^(/Users/.*)(\n)作为Find What:参数,输入$1$2, 作为Replace With:参数。这将有效地将所有行转换为单行逗号分隔值 ( Windows用户可以输入 ^(C:\\.*)(\n)

Step3-1

复制结果行。

Step3-2

4:

使用 Ctrl + Shift + F 打开find_in_files面板。

将复制的路径列表粘贴为Where:参数,并输入第二个查询作为Find:参数。

Step4

5:

根据需要重复。