joplin 中文文档 下载 App

全文搜索的原理与中文搜索模式说明

Joplin 的搜索速度在同类应用里是出了名的快,秘密在底层:它用 SQLite 的全文索引(FTS)实时给所有笔记建索引。

为什么快

笔记一被创建或修改,内容就实时进入全文索引;查询直接命中索引而不是逐条扫描正文。几千上万条笔记里找一个词,基本是瞬时的。

基础查询语法

查询类型写法效果
单个词cat含这个词的笔记(不含子串匹配)
多个词dog cat同时含两个词(AND 关系)
短语"shopping list"词序相邻、精确匹配
前缀通配swim*命中 swim、swimming 等(通配符只能放词尾)
基础模式/"- [ ]"关闭全文索引,按字面精确搜(慢但能搜符号)

基础模式(前缀加斜杠)是搜特殊符号的正解,比如把所有未勾选的任务找出来。

中文用户必读:CJK 搜索模式

SQLite 全文索引按空格分词,天生不适合中文这类没有空格的语言。Joplin 的解法是内置了一个专用搜索模式:检测到中文、日文、韩文或泰文时自动切换,不走 FTS 但保留多词查询、过滤器等全部能力。

要知道的两个特性:

搜索结果排序

默认按相关度排:命中词次数多的靠前,多个关键词时还考虑它们的距离。搜出意外结果可以在官方论坛反馈。

图片里的文字也能搜

OCR 之后,附件里的文字同样进入搜索范围,见OCR 图内文字识别。