IntelliJ IDEA Ultimate 2017.3:如何组合类名筛选与内容搜索?
在IntelliJ IDEA 2017.3中结合类名过滤与全文搜索的方法
当然可以实现!你完全能把这两种常用的搜索方式结合起来,精准定位到目标类。下面我就用你举的例子——查找名称包含xml的类中存在transformation相关内容的类——来一步步演示操作:
方法一:通过自定义搜索范围实现(推荐,可复用)
- 打开「Find in Path」窗口:按下你熟悉的快捷键
Ctrl + Shift + F。 - 在顶部的搜索输入框中,填入你要查找的文本关键词:
transformation(支持通配符或正则,比如要模糊匹配可以用*transformation*)。 - 限定搜索范围到指定类:
- 找到窗口中的「Scope」下拉框,选择「Custom」选项,然后点击右侧的「...」按钮打开范围设置界面。
- 在范围设置窗口左上角,点击「+」按钮,选择「Local Scope」,给这个自定义范围起个好记的名字(比如「XML相关类」)。
- 在右侧的「Pattern」输入框中,输入类名过滤规则:
file:*xml*.java(如果是Kotlin类就改成file:*xml*.kt,这个规则会匹配所有文件名包含「xml」的对应类型文件)。 - 点击「OK」保存这个自定义范围,回到「Find in Path」窗口。
- 确认搜索范围已切换为你刚创建的「XML相关类」,点击「Find」按钮,IDE就会只在名称含xml的类里搜索transformation相关内容了。
方法二:临时选中目标类后搜索(适合单次临时操作)
如果你只是偶尔需要做一次这样的搜索,还可以用更快捷的方式:
- 按下
Shift + Shift打开「Search Everywhere」窗口,输入xml筛选出所有名称包含xml的类。 - 按住
Ctrl键选中所有你需要包含的类(如果要全选可以用Ctrl + A)。 - 右键点击选中的类,选择「Find in Path...」选项,此时「Find in Path」窗口会自动将搜索范围限定在你选中的这些类中。
- 在搜索框中输入
transformation,点击「Find」即可完成搜索。
内容的提问来源于stack exchange,提问作者Nikolas
相关产品推荐
相关产品推荐

