VSCode“在文件中查找”支持正则、范围筛选、上下文预览和智能排除。启用。* 开正则、Aa 切大小写敏感;Alt+ L 限定文件范围,Alt+Enter 批量选中;支持 glob 排除如!node_modules/**,悬停看上下文,Ctrl+Click 跳转,可保存常用搜索。
vscode 的“在文件中查找”(ctrl+shift+f / cmd+shift+f)不只是简单搜关键词,它支持正则、跨文件范围筛选、上下文预览和智能排除,用好能极大提升代码定位效率。
启用正则与大小写敏感搜索
默认搜索是模糊、不区分大小写的。点击查找框右侧的 .* 图标可开启正则模式,Aa 图标切换大小写敏感。比如想匹配所有以 handle 开头、后跟大驼峰函数名的调用:handle[A-Z]w+(;加 Aa 后就不会误中 handleclick 这类小写连写。
- 常用正则简写:`b` 表示词边界,`d+` 匹配数字,`//.*` 可快速找单行注释
- 按 Alt+Enter 可在当前结果中批量选中所有匹配项,方便统一修改
精准限定搜索范围
在搜索框下方的“文件名中查找”输入框(或按 Alt+L 聚焦),可限制只在特定类型或路径下搜索。例如:*.ts 查 TypeScript 文件,src/components/** 限定组件目录,!node_modules/** !dist/** 排除常见构建目录(VSCode 默认已排除 node_modules,但显式写更安心)。
- 支持 glob 通配符:
**/api/*.js匹配任意层级 api 目录下的 JS 文件 - 多个条件用空格分隔,如
*.test.ts *.spec.ts同时查测试文件
查看上下文与快速跳转
搜索结果默认展开 1 行上下文,点击右侧箭头可展开至 3 行或收起。鼠标悬停在结果上会显示完整行内容;按 Enter 跳转到该处,Ctrl+Click(Mac 为 Cmd+Click)可在新编辑器标签中打开并定位。
- 右键某条结果 →“在文件中替换”,可对单个文件内所有匹配项批量替换
- 勾选右上角“保留当前搜索”,切换文件时仍保留搜索面板,避免重复输入
保存常用搜索为工作区设置或快捷操作
频繁使用的复杂搜索(如找所有未使用的 import),可保存为自定义命令或通过设置固定。虽然 VSCode 不直接支持“保存搜索”,但你可以:
- 把 正则表达式 复制进剪贴板,配合 Ctrl+Shift+P →“Preferences: Open Settings (JSON)”添加搜索历史(需插件如 Search History)
- 用 Ctrl+K Ctrl+R 打开“最近打开的文件”侧边栏,再按 Ctrl+Shift+F,自动继承上次搜索路径
- 安装插件 Advanced Search 或 Regex Preview,获得实时正则高亮与调试支持
基本上就这些——不用背命令,记住 .*、Aa、Alt+L 和 Alt+Enter 四个快捷入口,日常搜索就稳了。