Obsidian 全局搜索功能
Cite
Obsidian 核心插件——搜索,可以通过使用高级搜索词和运算符缩小结果范围,帮助您快速查找 Obsidian 库中的关键数据。
默认情况下,您可以在左侧边栏中找到搜索(🔍)。您还可以通过按 Ctrl+Shift+F (或 macOS 上的 Cmd+Shift+F )打开搜索。
- 搜索所选文本:如果您在编辑器中选择文本并使用键盘快捷键打开“搜索”,“搜索”将显示所选文本的搜索结果。
- 搜索最近的搜索词:使用空搜索词打开搜索以列出最近的搜索词。单击其中任意一个即可再次使用搜索词。
搜索词 (Search terms)
搜索词是您在搜索字段中输入的单词或短语。学习如何有效地编写搜索词可以帮助您快速找到所需的内容,即使在大型金库中也是如此。 Obsidian 只搜索笔记和画布的内容。
默认情况下,您只能搜索笔记和画布的路径和文件名。要搜索 Vault 中任何文件的路径或文件名,请使用 path 或 file 运算符。
转义反斜杠
搜索词中的每个单词在每个文件中都是独立匹配的。要搜索确切的短语,请用引号括起来,例如 "star wars" 。要搜索精确短语中引用的文本,您可以通过在引号前面添加反斜杠 ( \ ) 来转义引号,例如 "they said \"hello\" to each other" 。
组合运算 (空格 与 AND 或 OR)
您可以控制是否返回包含搜索词中的所有单词或任何单词的文件:
meeting work返回包含meeting和work文件。meeting OR work返回包含meeting或work文件。
您甚至可以将两者组合在同一个搜索词中。
meeting work OR meetup personal返回“ work meetings”和“meetup personal”的文件。
您可以使用括号来控制每个表达式的优先级。
meeting (work OR meetup) personal返回包含meeting、personal以及work或meetup的文件。
非运算 ( - )
要从搜索结果中排除或否定某个单词,请在其前面添加连字符 ( - ):
meeting -work返回包含meeting但不包含work文件。
您可以排除多个表达式:
meeting -work -meetup返回包含meeting但不包含work或meetup的文件。
括号组合表达式
您可以使用括号排除表达式组合:
meeting -(work meetup)返回包含meeting但不同时包含work和meetup的文件。
如果您需要对复杂的搜索词进行故障排除,可以单击“搜索”中的**“解释搜索词”**以获取搜索词的解释。
搜索运算符 (Search operators)
搜索运算符支持更细粒度的搜索词,以进一步过滤您的结果。
有些运算符甚至允许您在括号内添加嵌套搜索词,例如: task:(call OR email) 。
| 搜索运算符 | 描述 |
|---|---|
file: | 查找文件名中的文本。匹配 Vault 中的任何文件。 示例: file:.jpg 或 file:202209 。 |
path: | 在文件路径中查找文本。匹配 Vault 中的任何文件。 示例: path:"Daily notes/2022-07" 。 |
content: | 在文件内容中查找文本。 示例: content:"happy cat" 。 |
match-case: | 区分大小写的匹配。 示例: match-case:HappyCat 。 |
ignore-case: | 不区分大小写的匹配。 示例: ignore-case:ikea 。 |
tag: | 在文件中查找标签。 示例: tag:#work 。请记住,搜索 tag:#work 不会返回 #myjob/work 的结果。 注意:由于 tag: 忽略代码块和非 Markdown 内容中的匹配,因此它通常比 #work 的普通全文搜索更快、更准确。 |
line: | 在同一行查找匹配项。 示例: line:(mix flour) 。 |
block: | 在同一块中查找匹配项。 示例: block:(dog cat) 。注意:由于 block: 需要搜索来解析每个文件中的 Markdown 内容,因此可能会导致您的搜索词需要更长的时间才能完成。 |
section: | 在同一部分(两个标题之间的文本)中查找匹配项。 示例: section:(dog cat) 。 |
task: | 按照块的方式在任务中查找匹配项。 示例: task:call 。 |
task-todo: | 按照区块的方式在未完成的任务中找到匹配项。 示例: task-todo:call 。 |
task-done: | 按照区块的方式在已完成的任务中找到匹配项。 示例: task-done:call 。 |
搜索属性 (Search properties)
您可以在搜索词中使用 属性 中存储的数据。
使用括号将属性名称 [property] 括起来以返回具有该属性的文件:
[aliases]返回包含aliases属性的文件
使用方括号和冒号 [property:value] 返回具有该属性和值的文件:
[aliases:Name]返回aliases属性值为Name文件
属性和值都允许子查询,例如用于分组的括号、 OR 运算符、用于精确匹配的双引号和正则表达式。
- 示例:
[status:Draft OR Published]查找返回status属性值为Draft或Published文件
更改区分大小写
默认情况下,搜索词不区分大小写。如果您想搜索搜索词的确切大小写,请单击匹配大小写()在搜索栏中。

此设置可以切换。如果**“匹配大小写”**图标突出显示,则意味着您当前正在进行区分大小写的搜索。
更改结果排序顺序
- 输入搜索词 (Search term)。
- 在搜索字段下,单击右侧的下拉菜单。
- 选择您想要的排序顺序。默认为“文件名(A 到 Z)”。

可以使用以下选项:
- 文件名(A 到 Z)
- 文件名(Z 到 A)
- 修改时间(从新到旧)
- 修改时间(从旧到新)
- 创建时间(从新到旧)
- 创建时间(从旧到新)
复制搜索结果

- 输入搜索词 (Search term)。
- 在搜索字段下,选择结果数量旁边的三个点图标。
- 选择复制搜索结果,弹出的对话框,可以设置搜索结果的格式。

使用正则表达式
正则表达式是描述文本模式的一组字符。要在搜索词中使用正则表达式,请用正斜杠 ( / ) 将表达式括起来。
/\d{4}-\d{2}-\d{2}/匹配 ISO 8601 日期,例如 2022-01-01。
您甚至可以将正则表达式与搜索运算符结合起来:
path:/\d{4}-\d{2}-\d{2}/返回文件路径中带有日期的文件。
正则表达式有不同的风格,可能看起来彼此不同。 Obsidian 使用 JavaScript 风格的正则表达式。
配置搜索设置
要配置搜索,请单击搜索设置在搜索栏右侧查看切换。

| 环境 | 描述 |
|---|---|
| 折叠结果 | 切换是否显示搜索上下文。 |
| 显示更多上下文 | 扩展搜索结果以显示匹配项周围的更多文本。 |
| 说明搜索词 | 分解搜索词并以纯文本进行解释。 |
Query 代码块
要将搜索结果嵌入到注释中,请添加 query 代码块:
```query
embed OR search
```
讨论
若阁下有独到的见解或新颖的想法,诚邀您在文章下方留言,与大家共同探讨。
反馈交流
其他渠道
版权声明
版权声明:所有 PKMer 文章如果需要转载,请附上原文出处链接。