Notepad++不支持按文件名搜索,仅支持按内容搜索;必须用Ctrl+Shift+F打开“在文件中查找”,正确设置目录、文件过滤器和“搜索子文件夹”,关闭“匹配整个单词”,并启用“在新标签页中打开”才能正常跳转。

Notepad++ 本身不提供“按文件名搜索文件”的功能,它只支持“按内容搜索文件”——也就是说,你无法用它像 Windows 资源管理器那样输入 config.json 就列出所有同名文件;但你可以秒级定位“哪个文件里写了 database_url”。这是根本区别,别走错方向。
Ctrl+Shift+F 是唯一入口,不是 Ctrl+F
很多人反复按 Ctrl+F 输关键词、换目录、改选项,结果面板始终空着——因为 Ctrl+F 永远只在当前打开的单个文件里搜。真要扫整个文件夹,必须按 Ctrl+Shift+F(或菜单栏「搜索 → 在文件中查找」)。这个对话框里才有三个不可少的控件:目录、文件过滤器、搜索子文件夹。缺一个,搜索就失控。
- 点开
Ctrl+F后看到“查找全部”按钮?立刻关掉,重按Ctrl+Shift+F -
目录字段必须填有效路径:填.表示当前打开文件所在目录(最稳),不要手输带中文或空格的绝对路径(旧版对 UTF-8 路径解析易静默失败) - 路径末尾带不带反斜杠
\都行,Notepad++ 会自动处理;粘贴时用正斜杠/更少出错
“匹配整个单词”默认开着,但一开就漏匹配
这个选项看着安全,实际是高频踩坑点。比如搜 user,但目标变量是 username、api_user_id 或 is_user,只要勾了它,全被过滤掉——这不是 bug,是设计如此。
- 除非你明确只想命中独立单词(如文档中单独出现的
error,而非enderror),否则一律关掉匹配整个单词 - 需要兼顾精确与模糊?改用正则:
\buser\b表示单词边界,比开关更可控 -
区分大小写和匹配正则表达式默认关闭,开了却没写对语法(比如.*跨行失效),结果就是零匹配
搜索结果双击打不开?不是 Bug,是设置被关了
搜完一堆结果,点底部面板里的某一行没反应——大概率是两个基础选项被禁用了:
- 去「设置 → 首选项 → 搜索」,确认勾选了
在新标签页中打开找到的文件。没勾的话,双击只高亮当前行,不会加载文件内容 - 同时检查「设置 → 首选项 → MISC → 自动完成」里的
Enable auto-loading for large files是否开启。否则大文件首次点击不会读入内存,自然无法定位 - 勾选后首次打开大项目可能卡 1–2 秒,这是 Notepad++ 在后台预读内容,属正常行为
文件过滤器写法很严格,分号不能错
文件过滤器 控制哪些后缀参与搜索,语法必须是 *.js;*.ts;*.jsx 这种用英文分号 ; 分隔的列表。写成 *.js, *.ts 或 *.js *.ts 都会被忽略,Notepad++ 直接当无效过滤器处理,结果就是所有文件都不扫。
- 大小写不敏感:
*.JS和*.js效果一样 - 通配符只支持
*和?,不支持**递归匹配子目录——子目录是否扫描,由搜索子文件夹勾选状态决定,和过滤器无关 - 想排除某类文件?Notepad++ 没有“排除”语法,只能显式列出要包含的类型;留空 = 扫描所有文件(含
.git、node_modules下的干扰项)
真正难的不是操作步骤,而是判断该搜什么、在哪搜、怎么缩圈——比如搜 timeout 却扫出几百个结果,是因为没加 文件过滤器 或没关 匹配整个单词;而搜不到,往往是因为路径填了 ./src(相对路径无效)或误用了 Ctrl+F。这些细节不盯住,再快的快捷键也白搭。


















