跳转至

搜索

Search.png

搜索是一个十分强大的特性,但同时它也可以使你无比的困惑。在大多数情况下,你只需要简单地输入你想要搜索的东西,它都能够工作。但除此之外,搜索功能还有许多能够帮助你更快更准确搜索的能力。

高级搜索#

在你输入搜索关键字时,点击“说明搜索含义”将能够显示搜索的范围,这将会在你搜索的关键字排错中帮上大忙。

  • 如果字符串中包含空格,则默认被当作多个关键字进行搜索。例如,foo bar 的搜索范围将等同于foo的范围加上bar的范围。
  • "引用 字符串"可以用来解决关键字中包含空格的情况。易得,加上了双引号之后的 "foo bar" 将精确搜索到同时包含这两个词的内容。如果你要搜索一串包含双引号的字符,使用\"来防止错误识别,同理对于反斜杆可以使用\\
  • 搜索中也可以使用布尔运算。使用OR来匹配几者中的一个,使用-来取反。空格字符将被用于代表布尔运算的“与”。
    • 举个例子:foo OR bar将会被识别为或运算,笔记中可以仅包含其中之一。foo -bar将会搜索所有只带foo但不带bar的笔记。
  • 可以使用括号来将布尔运算分组。举个例子,(a OR b) (c OR d)。这在非常复杂的运算中可以防止出现意料之外的情况。
  • 搜索同样支持正则表达式(regex)。使用斜杠来将正则表达式圈住,如 /[a-z]{3}/
  • 我们同样也提供了一些特殊的操作。其中的一些还可以进行嵌套,比如说file:("to be" OR -"2B")
    • file: 将会只匹配文件名中包含对应字符的文件。比如:file:".jpg"。如果你使用Zettelkasten-style UIDs,这将可以很好地帮助你找到某一段时间的笔记,比如file:"202007"来定位到2020年七月创建的笔记。
    • path:将会只匹配包含对应绝对路径的文件。举个例子:file:"Daily Notes/2020-07"
    • match-case:ignore-case:将会强制接下来的字符是否大小写匹配。

搜索设置#

搜索功能附带了几个可供选择的功能:

  • 折叠搜索结果 将会只显示匹配到的文件名称以及对应内容的行数。可以通过点击文件名旁边的箭头来展开对应的项。
  • 区分大小写 可以将搜索更改为大小写敏感模式,其会被match-case:ignore-case:覆盖。
  • 说明搜索含义将会显示该字符串的搜索范围。