
我有一个文件夹,其中包含类似文件
radiobutton-clicked.png
radiobutton-foobar.png
radiobutton-foobarbaz.png
... etc.
当我在 Windows 资源管理器中搜索时,会发生以下情况:
radio
:找到所有文件radio*
:找到所有文件*button
:找到所有文件*radiobutton*
:找到所有文件radiobutton*
:没有结果radiobutton
:没有结果radio*button
:找到所有文件
那么它到底是*
做什么的呢?有这方面的文档吗?
并且为什么radio
和radio*button
可以作为搜索词,但radiobutton
不能?
编辑:
我知道这*
通常应该是一个匹配 0 个或更多字符的通配符。但在这种情况下显然不是。
答案1
答案2
*
和?
通配符,它们起源于 DOS。下面是一个页解释它们的用途。
*
匹配任意字符组合和任意数量的字符(甚至无)
?
匹配一个字符
我尝试在我的计算机上进行搜索,并得到以下结果:
radio
:找到所有文件radio*
:找到所有文件*button
:找到所有文件*radiobutton*
:找到所有文件radiobutton*
:找到所有文件radiobutton
:找到所有文件radio*button
:找到所有文件
答案3
我想我们都已经确定 * 一直是 0 或更多的通配符(或者如果您使用正则表达式,则为 .*)。这正是它应该做的,但是对我来说,也有很多次情况没有正确发生。我发现重新启动后,相同的搜索可以正常工作。这可能是由于索引服务,因为已经报告了它的问题,并且肯定会有错误,尤其是 M$ 推出服务包和安全更新的速度。我的建议是,坚持使用 cmd.exe,这就是我所做的,那么我就不必担心文件是否被遗漏了。我试图重现您的错误,但没有成功,您可能需要检查这两个文件的文件属性,以确保它们没有标记为系统(您不会在属性对话框中看到)或隐藏,或者有其他属性阻止搜索看到它。但就像我说的,我似乎无法重现它。
答案4
* 通常表示全部。例如,如果我搜索 *.png,它将搜索所有 .png 文件。