搜索功能
Obsidian 内置了强大的搜索功能,支持多种搜索语法和高级筛选,帮助你快速找到需要的笔记内容。
基本搜索
快速搜索
- 快捷键:
Ctrl/Cmd + Shift + F - 命令面板:
Ctrl/Cmd + P→ 输入「搜索」 - 快速切换:
Ctrl/Cmd + O(文件名搜索)
搜索界面
搜索面板包含以下元素:
- 搜索输入框:输入搜索关键词和语法
- 匹配计数:显示匹配结果数量
- 结果列表:显示匹配的笔记和上下文
- 筛选按钮:快速应用常用筛选
搜索选项
点击搜索框右侧的选项按钮:
| 选项 | 功能 |
|---|---|
| 区分大小写 | 是否区分大小写 |
| 解释搜索语法 | 开启/关闭语法解析 |
| 折叠结果 | 折叠/展开搜索结果 |
| 显示上下文 | 显示匹配内容的上下文 |
搜索语法详解
基础语法
| 语法 | 说明 | 示例 |
|---|---|---|
关键词 | 搜索包含关键词的笔记 | obsidian |
"精确短语" | 精确匹配短语 | "hello world" |
关键词1 关键词2 | 同时包含两个关键词 | 笔记 方法 |
关键词1 OR 关键词2 | 包含任一关键词 | 笔记 OR 方法 |
-关键词 | 排除包含关键词的笔记 | -临时 |
() | 分组搜索 | (笔记 OR 方法) 教程 |
文件筛选
file:文件名 # 搜索文件名
path:路径/ # 搜索特定路径下的笔记
file:.md # 搜索特定扩展名的文件
extension:md # 同上示例:
# 搜索文件名包含「项目」的笔记
file:项目
# 搜索「工作」文件夹下的笔记
path:工作/
# 组合使用
path:项目 file:报告标签搜索
tag:#标签名 # 搜索特定标签
tag:#标签/子标签 # 搜索嵌套标签示例:
# 搜索带有「重要」标签的笔记
tag:#重要
# 搜索带有嵌套标签的笔记
tag:#项目/进行中
# 组合搜索
tag:#重要 path:工作内容筛选
line:(关键词) # 同一行中包含关键词
section:(关键词) # 同一章节中包含关键词
block:(关键词) # 同一块中包含关键词示例:
# 搜索同一行中包含「会议」和「决议」
line:(会议 决议)
# 搜索同一章节中包含「任务」
section:(任务)
# 搜索同一块中包含「代码」
block:(代码)属性筛选
Obsidian 支持 YAML frontmatter 属性搜索:
# 文件属性
file:笔记名 # 文件名匹配
path:文件夹/ # 路径匹配
extension:md # 扩展名匹配
# 时间筛选
cdate:2024-01-01 # 创建日期
mdate:2024-01-01 # 修改日期
cdate:2024-01-01..2024-12-31 # 日期范围
mdate:2024-01.. # 日期之后
# 元数据筛选
[author]:张三 # frontmatter 中的属性
[status]:完成 # 属性值匹配时间筛选详解:
| 语法 | 说明 |
|---|---|
cdate:2024-01-15 | 2024年1月15日创建 |
cdate:2024-01 | 2024年1月创建 |
cdate:2024-01-01..2024-01-31 | 1月创建 |
mdate:yesterday | 昨天修改 |
mdate:today | 今天修改 |
mdate:-7 | 过去7天修改 |
正则表达式
Obsidian 支持使用正则表达式进行高级搜索:
/[0-9]{4}-[0-9]{2}-[0-9]{2}/ # 匹配日期格式
/^#{1,3}\s/ # 匹配一级到三级标题
/\b\w{5,}\b/ # 匹配5个以上字母的单词常用正则示例:
# 匹配邮箱
/[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}/
# 匹配网址
/https?:\/\/[^\s]+/
# 匹配电话号码
/\d{3}-\d{4}-\d{4}/
# 匹配 Markdown 链接
/\[.*?\]\(.*?\)/高级搜索技巧
组合搜索
实战示例:
# 搜索「项目」文件夹下包含「待办」但不包含「完成」的笔记
path:项目 待办 -完成
# 搜索带有特定标签且包含图片的笔记
tag:#重要 ![[.png]]
# 搜索本周修改的重要笔记
mdate:-7 tag:#重要
# 搜索特定作者创建的技术笔记
[author]:张三 tag:#技术
# 搜索包含未完成任务笔记
- [ ]
# 搜索包含特定代码块的笔记
```javascript
# 搜索包含嵌入内容的笔记
!\[\[保存搜索
将常用搜索保存为搜索组件:
- 执行搜索后点击「保存当前搜索」按钮
- 输入搜索名称
- 保存后的搜索会显示在搜索面板顶部
- 点击即可快速执行
管理保存的搜索:
- 重命名:右键 → 重命名
- 删除:右键 → 删除
- 编辑:右键 → 编辑搜索条件
嵌入搜索结果
将搜索结果嵌入到笔记中:
markdown
```query
tag:#重要
**嵌入搜索示例:**
```markdown
## 待办事项
```query
- [ ] path:项目最近更新
query
mdate:-7
### 使用 Dataview 查询
对于更复杂的查询,可以使用 Dataview 插件:
```dataview
LIST
FROM "项目"
WHERE status = "进行中"
SORT file.mtime DESCDataview 搜索示例:
dataview
TABLE
file.mtime as "修改时间",
status as "状态"
FROM "工作"
WHERE file.mtime >= date(today) - dur(7 days)
SORT file.mtime DESC搜索设置
搜索选项
在设置 → 搜索中可以配置:
| 设置项 | 说明 |
|---|---|
| 区分大小写 | 默认是否区分大小写 |
| 显示上下文 | 是否显示匹配内容的上下文 |
| 结果排序 | 按相关性或修改时间排序 |
| 结果数量 | 显示的最大结果数量 |
索引设置
索引选项:
- 自动索引: 实时更新搜索索引
- 重建索引: 手动重建搜索索引
- 排除文件夹: 排除不需要索引的文件夹重建索引:
如果搜索结果不正确:
- 设置 → 搜索
- 点击「重建索引」
- 等待索引完成
排除搜索
在设置中配置排除项:
yaml
# 排除特定文件夹
userFilter:
- "归档/"
- "模板/"
# 排除特定文件
exclude:
- "*.tmp"搜索插件推荐
Omnisearch
更强大的全文搜索引擎:
| 特性 | 说明 |
|---|---|
| 更快的搜索速度 | 优化的搜索引擎 |
| 更智能的结果排序 | AI 辅助排序 |
| PDF 搜索 | 直接搜索 PDF 内容 |
| 图片 OCR 搜索 | 识别图片中的文字 |
| 权重调整 | 自定义搜索权重 |
安装配置:
- 在社区插件市场搜索「Omnisearch」
- 安装并启用
- 配置搜索权重和选项
Quick Explorer
快速文件导航:
| 特性 | 说明 |
|---|---|
| 类似命令面板 | 快速文件搜索 |
| 路径导航 | 文件夹层级导航 |
| 快速跳转 | 一键打开文件 |
| 键盘优先 | 完全键盘操作 |
Smart Random Note
智能随机笔记:
| 特性 | 说明 |
|---|---|
| 基于搜索条件 | 随机打开符合条件的笔记 |
| 知识复习 | 适合间隔重复学习 |
| 权重设置 | 根据属性调整概率 |
Recent Files
最近文件列表:
- 显示最近打开的文件
- 快速访问历史记录
- 支持固定常用文件
搜索工作流
日常搜索
yaml
推荐流程:
1. 使用 Ctrl/Cmd + O 快速切换笔记
2. 使用 Ctrl/Cmd + Shift + F 全局搜索
3. 保存常用搜索以便快速访问
4. 使用标签和属性组织笔记知识整理
yaml
整理流程:
1. 使用标签搜索找出相关笔记
2. 使用路径搜索定位特定文件夹
3. 组合使用筛选条件缩小范围
4. 批量处理搜索结果具体操作:
# 找出需要整理的笔记
tag:#待整理 mdate:-30
# 找出没有标签的笔记
-tag:#*
# 找出孤立笔记(无链接)
file:^((?!.*\[\[).)*$内容审计
yaml
审计流程:
1. 搜索未链接的笔记
2. 查找孤立内容
3. 识别需要整理的主题
4. 建立新的链接关系审计搜索示例:
# 查找没有出链的笔记
-\[\[
# 查找没有入链的笔记
(使用「未链接笔记」面板)
# 查找内容过短的笔记
file:.md (字数少于阈值)项目追踪
# 追踪项目进度
path:项目 [status]:进行中
# 查找待办事项
- [ ] path:项目
# 查找会议记录
tag:#会议 path:项目 mdate:-7搜索技巧总结
快速定位
- 使用
Ctrl/Cmd + O快速打开文件 - 使用
file:快速定位文件名 - 使用
path:定位文件夹 - 使用
tag:快速筛选标签
精确筛选
- 使用引号进行精确匹配
- 使用
-排除不需要的内容 - 使用
OR扩大搜索范围 - 使用
()分组复杂条件
高效管理
- 保存常用搜索
- 使用嵌入搜索展示动态内容
- 结合 Dataview 进行高级查询
- 定期审计搜索条件
性能优化
- 排除不需要索引的文件夹
- 定期重建索引
- 使用更精确的搜索条件
- 避免过于宽泛的正则表达式
搜索结果导出
复制搜索结果
- 执行搜索
- 右键点击结果列表
- 选择「复制所有结果」
- 粘贴到笔记中
Dataview 导出
dataview
TABLE without id
file.link as "笔记",
file.folder as "文件夹",
file.mtime as "修改时间"
FROM "项目"
WHERE status = "完成"
SORT file.mtime DESC插件导出
使用「Export to CSV」等插件导出搜索结果。
下一步
- 标签系统 - 学习标签的高级用法
- 图谱视图 - 可视化笔记关联
- Dataview 实战 - 数据查询进阶
- 属性系统 - 使用属性组织笔记
提示
掌握搜索语法可以大幅提升知识管理效率。建议将常用搜索保存起来,一键即可执行!
注意
正则表达式搜索可能会影响性能,特别是在大型库中。建议使用更精确的普通搜索语法。