如何从IntelliJ IDEA搜索中排除文件扩展名?


126

有没有办法排除在的IntelliJ IDEA的结果特定文件扩展名“ 中的路径查找 ”对话框(通过调用CTRL+ SHIFT+ F)?我要排除所有.css文件。

Answers:


184

在intellij 16中,有一个“文件名过滤器”部分,以排除扩展名的使用!*.java。您也可以提供更详细的模式,例如,我使用以下模式仅返回.java文件,但文件名以test开头或结尾的文件除外。模式:!*test.java,*.java,!Test*.java

在此处输入图片说明

在Intellij的最新版本中,GUI进行了一些更新,但仍然适用,请参见右上角的“文件掩码”,请参见下图:

在此处输入图片说明


1
我不能在文件掩码过滤器中提到!mocks / *。json吗?
CodeTweetie '17

1
@CodeTweetie对“ /”做什么,但不确定为什么需要它(我认为“ /”只是正则表达式中的分隔符)。没有它,您的过滤器会说排除以“ mock”开头的文件,然后以“ .json”结尾的文件
Marquis Blount

1
在最新版本(2018.1等)中似乎不存在此“文件名过滤器”对话框。
J Woodchuck '18年

请注意,此功能已在IntelliJ 2016.1中添加。如果您使用的是IntelliJ 15或更早版本的永久后备许可证,则此功能将不可用。参见我的其他文章
凯文

47

您可以在此处创建自定义范围:在“查找路径”对话框中,可以选中“自定义”单选按钮并打开范围窗口。您可以在此处自定义路径和搜索模式。

在此处输入图片说明

Pattern字段模式示例:

  • !file:*.css -排除CSS文件
  • file[MyMod]:src/main/java/com/example/my_package//* -将目录中的文件包含在项目中。
  • src[MyMod]:com.example.my_package..* -将所有文件递归地包含在包中。
  • file:*.js||file:*.coffee -包括所有JavaScript和CoffeeScript文件。
  • file:*js&&!file:*.min.* -包括除最小化生成的文件以外的所有JavaScript文件(以min扩展名表示)。

或检查官方文档。

祝好运!


2
那么排除所有CSS样式表的模式是什么?
罗伯特·库兹尼尔

3
抱歉,它在IntelliJ文档中:jetbrains.com/idea/webhelp/scope-language-syntax-reference.html。对于排除CSS,它是:!file:*。css。
罗伯特·库兹尼尔

你让我今天一整天都感觉很好!最后,我可以排除烦人的test-cases.js
Halyna,

18

例如,这将排除所有js,css和twig:

!*.js, !*.css, !*.twig

用于在路径中查找的PhpStorm文件掩码


3

如果您像我一样不想使用File Mask选项或创建自定义范围等,而只是希望能够一次将其添加到项目设置中并完成操作,那么这里为您提供了一个解决方案。

我希望我的“在路径中查找”不搜索lock文件(包管理器自动生成的清单文件),这是我要做的事情:

转到文件>>项目结构(或仅按Command +;)

项目设置下选择模块

在此处输入图片说明

在这种情况下,将模式或文件名添加到“排除文件”文本框中:*.lock;package-lock.json并单击“应用”,然后单击“确定”。

intellij项目结构截屏

注意上面的选项在IntelliJ 2019及更高版本中可用,不确定较旧的版本。有关更多信息,请https://www.jetbrains.com/help/phpstorm/clusion-files-from-project.html


这样做的问题在于,它还从构建权中排除了具有这些扩展名的文件,而不仅仅是从搜索中排除了!
苏安

据我所知,@ Suan只会将文件从搜索,代码完成,检查等中排除。几乎将其从索引中排除。从JetBrains上检阅
help / phpstorm /

描述不好。我花了5分钟的时间才能在Project Structure中找到该选项。请添加另一个屏幕截图,显示确切找到该位置的位置。
Frederic Leitenberger

@FredericLeitenberger-完成!
阿伦·卡纳蒂

@ArunKarnati太好了!谢谢!
弗雷德里克·莱滕伯格

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.