intelliJ - >有没有办法将搜索范围扩展到函数内

时间:2018-05-31 15:01:45

标签: search intellij-idea

编码时,我经常需要搜索大型文件中常见的关键字,但我正在寻找函数中的实例。

默认搜索功能通常会从顶部开始给我所有结果。是否有任何方式/工作流只能在特定的方法/功能或代码块中进行搜索?

3 个答案:

答案 0 :(得分:2)

在Ubuntu 18.04上使用IntelliJ IDEA 2018.1.4(终极版),Build#IU-181.5087.20,您可以这样做(提到的键映射适用于Linux):

我们以下面的代码为例,我们将在方法“清除”中搜索 key 这个词。正如您所看到的那样,该单词出现了很多次(红色,突出显示了我们在结果中想要的那些,以及蓝色的其他出现,我们不希望在搜索结果中出现)

Image of IntelliJ IDEA Editor with the searched word

1- 选择要将搜索范围限制为的区域

Image of IntelliJ IDEA Editor with the searched word scoped inside some area

2-按 Ctrl + Shift + ˚F 。它将弹出一个搜索窗口,其中所选文本预先填写在搜索框中。

3-选择“范围”选项,然后在旁边的组合中,“选择”(如果默认情况下未选中这些选项)

Image of the pop up shown by IntelliJ IDEA for searching the word in the selected scope inside the current editor

4- 输入您要搜索的字词(在此示例中为key字词。)

enter image description here

5-显示的结果将仅限于所选区域。注意右上角只有9个匹配项(“匹配大小写”选项被选中),尽管在同一个文件中有同一个词的许多其他发生。

但是我既没有找到一个组合键,也没有找到一个新组合。另外,请注意搜索如何包含方法文档中的文本。

答案 1 :(得分:1)

有一种方法可以搜索方法,但是它似乎不适用于其他范围。

像往常一样在文件中搜索时,点击“全部查找” find all button in search toolbar

您将在底部面板中获得结果列表。如果启用“按文件结构分组”(默认情况下已将其禁用),则可以获取特定方法的匹配列表。 group by file structure button in search results panel

答案 2 :(得分:0)

看起来我们终于在IDEA 2019.3中获得了此功能:

https://blog.jetbrains.com/idea/2019/09/whats-new-in-intellij-idea-2019-3-eap-2/(Ctrl-F副标题为“使用“查找”操作时可以在选定区域中进行搜索”)

  

现在可以使用“查找”操作(cmd + F / Ctrl + F)在选定区域中进行搜索。只需在编辑器中选择所需的代码段,然后调用“查找”操作,IDE将仅在选定区域中执行搜索。

文章的屏幕截图(原为GIF)

enter image description here