Regex 如何在windows文件资源管理器中搜索具有指定扩展名的文件?

Regex 如何在windows文件资源管理器中搜索具有指定扩展名的文件?,regex,windows,full-text-search,Regex,Windows,Full Text Search,我们可以使用以下工具在windows 7或更高版本中搜索文件: (我没有图像上载权限。我指的是windows文件资源管理器中的右上角区域。) 当我使用“*.m”搜索MATLAB文件时,它不仅返回*.m文件,而且还返回*.mp3、*.mp4文件。有没有办法以独占方式显示*.m文件 谢谢 我假设您在这里使用引号来显示您键入的文本,因为具有讽刺意味的是,它的确切工作方式是将搜索放在引号中 所以 *m 查找.mp3以及.m,但 “*.m” 应该只找到.m文件。或者你也可以写 分机:“.m” 这将保证只搜

我们可以使用以下工具在windows 7或更高版本中搜索文件: (我没有图像上载权限。我指的是windows文件资源管理器中的右上角区域。)

当我使用“*.m”搜索MATLAB文件时,它不仅返回*.m文件,而且还返回*.mp3、*.mp4文件。有没有办法以独占方式显示*.m文件


谢谢

我假设您在这里使用引号来显示您键入的文本,因为具有讽刺意味的是,它的确切工作方式是将搜索放在引号中

所以

*m

查找.mp3以及.m,但

“*.m”

应该只找到.m文件。或者你也可以写

分机:“.m”

这将保证只搜索扩展。(虽然我不确定这里是否需要这样做,因为windows的文件名中可以有一个点,也可以有没有扩展名的文件,但我不确定是否可以同时有这两个扩展名。)

“*.m”


将解决您的问题。您可以在以下链接中找到有关要在msdn中使用的regex的更多信息。

或者,您也可以像这样简单地搜索扩展名:

.extension
例如:

键入
.exe
将为您提供文件夹中所有扩展名为.exe的文件


注:键入
.xml或.vmcx
将为您提供这两种类型的文件。如果您试图对存储在不同文件夹或位置的不同类型的文件进行存档,则此功能非常有用。

除此之外,您还可以利用通配符
*

例如,如果要搜索名称以024结尾的文件
,或以024开头的文件
,则可以在搜索框中分别输入
*024.*
024.*


在这里,
*
之后的
表示具有任何扩展名的文件,如果您需要特别说明,请提及扩展名行
024.png

资源管理器没有使用RegEx查找的功能。 您需要使用Power Shell而不是Win Explorer

例如:“(?i)Out”是正则表达式

Get-ChildItem -Path e:\temp -Recurse -File | Where-Object { $_.Name -match '(?i)Out' }

在Windows 10中,所有这些选项都会为我返回*.mp3和*.m。玩了一段时间后,我实际上不认为OP想要什么:搜索有点基本。你能做的最好的事情就是查看/详细信息和按类型排序,这至少会将.m文件分组在一起。我刚刚在我的Windows 10机器上用Creators update测试了这个,它对我来说仍然和Windows 7中的一样工作。如果双引号真的起作用,那就太好了,但不幸的是Windows文件资源管理器不是这样工作的。在我的例子中,搜索system.filename:“*2.m???”不会产生文件名以2结尾、扩展名为m、多2个字符的结果。微软Windows10做了一些创造性的无用的事情,比如选择一个以“BWV 1042.mp3”结尾的文件来匹配它。它不服从显式空格。@minok这不是双引号的问题,而是空格和通配符的组合问题,它们的解释有点错误。您会注意到它与“[asterisk][asterisk]2.m???”以及“[asterisk]2.m[asterisk]”(这可能对您来说已经足够好了)一起工作(但结果当然不一样),因此在混合使用通配符时,如何解释通配符后的空格存在严重问题。我不认为这会改变任何关于这仍然是一个有效答案的问题,但也许它可以帮助你自己搜索。很抱歉写这封信的方式很奇怪,但是*保留在这里以粗体显示,因此它完全破坏了我的格式,我无法在编辑评论的5分钟内找到它