我经常使用Sublime Text 2的search all open files/folders
功能(CMD + SHIFT + F)。
是否可以执行仅查询包含第一个搜索查询的文件的第二个搜索?
例如:Search 1
找到包含“hello”的5个文件。 Search 2
应该只查询那些相同的5个文件中的“world”,因此生成的匹配将是包含“hello”和“world”的文件。
我可以搜索结果缓冲区中可见的文本(例如下面的屏幕截图中),但我想搜索结果缓冲区中显示的所有文件的全部内容。
答案 0 :(得分:-1)
使用 Ctrl + Shift + F 打开find_in_files
面板。
在示例中,<open folders>
用于Where:
参数,但您可以使用符合初始搜索条件的任何内容。
当您仍在结果缓冲区中时,使用 Ctrl + F 打开find
面板。
输入^(/Users/.*)(?=:$)
作为Find:
参数,并确保已启用RegEx
开关。此RegEx
模式将匹配结果中的所有路径
( Windows用户可以输入 ^(C:\\.*)(?=:$)
)
复制选定的路径。
将复制的路径粘贴到空白文档中。
使用 Ctrl + H 打开replace
面板。
输入^(/Users/.*)(\n)
作为Find What:
参数,输入$1$2,
作为Replace With:
参数。这将有效地将所有行转换为单行逗号分隔值
( Windows用户可以输入 ^(C:\\.*)(\n)
)
复制结果行。
使用 Ctrl + Shift + F 打开find_in_files
面板。
将复制的路径列表粘贴为Where:
参数,并输入第二个查询作为Find:
参数。
根据需要重复。