Visual Studio 2022全局查找异常:!*\.*过滤器导致无搜索结果
Visual Studio 2022「在文件中查找」过滤器
!*\.*的问题解析 1. !*\.*的具体含义
在Visual Studio的文件搜索过滤器语法中:
!前缀表示排除匹配的文件/路径*\.*是通配符表达式:*匹配任意字符序列,.*匹配包含扩展名分隔符.的文件,也就是所有带扩展名的文件
合起来!*\.*的意思是:排除所有带有扩展名的文件,仅保留无扩展名的文件(比如无后缀的README、Makefile这类文件)。
2. 导致搜索失败的原因
你要搜索的class、{等内容存在于Program.cs这类带.cs扩展名的代码文件中,但!*\.*过滤器直接把所有带扩展名的文件都排除在了搜索范围外,相当于只在无扩展名的文件里查找——而这类文件通常不包含你要找的代码内容,自然返回无结果。
3. 关于过滤器自动设置的解决建议
VS2022 17.4.4版本可能存在配置缓存或UI逻辑的bug,导致该过滤器规则被异常追加。可以尝试以下方式修复:
- 直接在「在文件中查找」窗口点击使用默认值按钮,重置过滤器为默认的
!*\bin\*;!*\obj\*; - 关闭VS后,删除
%APPDATA%\Microsoft\VisualStudio\17.4_*(对应17.4.4版本的缓存目录)下的配置缓存,重启VS - 升级到Visual Studio 2022的后续版本,微软大概率在更新中修复了这类过滤器异常自动添加的问题
内容的提问来源于stack exchange,提问作者Chad
相关产品推荐
相关产品推荐

