intelliJ -> 有什么方法可以将搜索范围限制在函数内

问题描述 投票:0回答:4

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

默认搜索功能通常会从顶部开始提供所有结果。有没有什么方法/工作流程可以仅在特定方法/函数或代码块中进行搜索?

search intellij-idea
4个回答
6
投票

更新

  • Ctrl
    +
    F
  • 然后
    Ctrl
    +
    Alt
    +
    E
  • 输入要搜索的文字

在 MacOS 上,它是

cmd
而不是
Ctrl


原帖

你可以这样做(提到的键盘映射适用于Linux):

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

1- 选择您想要限制搜索范围的区域

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

3- 选择选项“Scope”,并在旁边的组合中选择“Selection”(如果默认情况下未选择)

4- 输入您要搜索的单词(在此示例中为

key
单词)。

5- 显示的结果将仅限于所选区域。请注意,右上角只有 9 个匹配项(“匹配大小写” 选项已选中),尽管在同一文件中同一单词多次出现。


但是,我既无法找到组合键来将其作为单个操作来执行此操作,也无法分配新的组合键。另外,请注意搜索如何包含方法文档中的文本。


使用 IntelliJ IDEA 2018.1.4(终极版)进行测试,在 Ubuntu 18.04 上构建 #IU-181.5087.20


4
投票

看起来我们终于在 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


2
投票

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

照常在文件中搜索时,单击“查找全部”

您将在底部面板中看到结果列表。如果启用“按文件结构分组”(我默认禁用它),您可以获得特定方法的匹配列表。


0
投票

Mac 中的 IntelliJ:

  1. 在文件中选择我们要查找的特定块 某事
  2. 按 CMD + F
  3. 按 CTRL + OPTION + G
  4. 请注意,光标已自动落在查找工具栏的文本字段中
  5. 输入要查找的内容
  6. 按 Enter 键移动光标 到第一次出现。
© www.soinside.com 2019 - 2024. All rights reserved.