Skip to content
Back to top

# 搜索语法

UltraSearch 提供的语法可以让你快速灵活地定制搜索。

下面是一些简单搜索的示例：

- 搜索 2022 年的照片：`Images 2022` UltraSearch 将列出修改日期在 2022 年的所有图像文件（如 jpg、png、bmp）。

- 搜索 2022 年 9 月的图像：`Images September 2022` UltraSearch 会显示 2022 年 9 月修改过的所有图像文件。

- 搜索当年八月的图片：`Images August` UltraSearch 会显示当年 8 月修改过的所有图像文件。

- 搜索今天修改的图像：`Images today` UltraSearch 会列出今天修改过的所有图像文件。

- 搜索上周的图片：`Images last week` UltraSearch 会显示最近七天内修改过的所有图像文件。

- 搜索当前年份的图像：`Images this year`，UltraSearch 列出在当前公历年内修改的所有图像文件。

- 搜索大型 Office 文件：`Office > 10MB` UltraSearch 列出所有大于 10 兆字节的 Excel、Word、PDF 等文件。

某些关键字还提供了更精确地构建搜索的机会。除了 文件名，您还可以搜索 文件扩展名、大小、日期、文件内容 等等。

搜索词可以通过 `'AND'` 或 `'OR'` 进行组合，文件名也可以使用该语法从搜索中排除。

也可以使用 万用符 和 正则表达式。下面你会看到允许的关键词描述和一些使用场景。对于大多数关键词，有 缩写形式 以便更快搜索。

搜索语法结构如下

    <Property> <Operator> <Value>

例如

    name:=readme

查找所有名称（属性）（操作符）与 readme（值）匹配的文件。

可将多个搜索词组合在一起：

    name:=readme, name:=movie

或

    name:=readme OR name:=movie

查找名称中包含 'readme'`OR` 'movie' 的所有文件。

下表列出了可在 UltraSearch 中使用的所有可用属性、运算符和连接词。

信息： 在搜索文件名时，可以省略 `name:`。尽管如此，`=` 字符通常可以省略作为操作符，以及在两个搜索词之间的 `AND` 作为连接词。这些是搜索中使用的默认属性、操作符和连接值。个别属性的不同拼写可以在下表中找到。

重要 ：如果要在搜索词中使用搜索语法的保留字符，如括号、逗号或空格，搜索词必须用双引号括起来。下表为示例。

关于日期的注意事项： 当使用日期作为搜索词的一部分时，所需的日期格式取决于 Windows 中配置的区域设置。

财产 | 说明 | 示例 | 另一种形式： | 解释：
--- | --- | --- | --- | ---
`name:` | 按 文件名 搜索。这是默认使用的属性，当未明确指定属性时。 | `readme` | `name:readme` | 搜索文件名包含 "readme "的所有文件。
`path:` | 通过文件夹路径 搜索。 | `path:Windows` | 无 | 搜索 Windows 文件夹中的所有文件和文件夹。
`extension:` | 通过 文件扩展名 搜索。 | `ext:txt` | `extension:txt` | 搜索扩展名为 "txt "的所有文件。
`filetype:` | 通过 文件类型 搜索。 | `filetype:Videos` | 无 | 搜索所有视频文件。 信息： 可用的 file 类型可在“选项>配置 file 类型”中进行调整。
`content:` | 通过 文件内容 搜索。 | `cont:license` | `content:license` | 全文搜索文件内容中出现 "许可证 "字样的所有文件。信息： 全文搜索耗时较长。因此建议使用其他搜索条件。
`size:` | 通过 文件大小 搜索。 | `size:<500MB` `size:>5MB` | 无 | 搜索所有小于 500 MB 的文件。搜索所有大于 5 MB 的文件。信息： 搜索仅涉及文件大小，不考虑文件夹大小。
`accessed:` | 按访问日期 搜索。 | `accessed:<=01.11.2021` `accessed:>01.11.2021` `accessed:15.03.2020-15.11.2021` | 无 | 搜索访问日期在指定时间间隔内的文件。也可以指定最大或最小日期来代替明确的时间间隔。
`created:` | 按 创建日期搜索。 | `created:<=01.11.2021` `created:>01.11.2021` `created:15.03.2020-15.11.2021` | 无 | 搜索创建日期在指定时间间隔内的文件。也可以指定最大或最小日期来代替明确的时间间隔。
`modified:` | 按修改日期 搜索。 | `modified:<=01.11.2021` `modified:>01.11.2021` `modified:15.03.2020-15.11.2021` | 无 | 搜索修改日期在指定时间间隔内的文件。也可以指定最大或最小日期来代替明确的时间间隔。
`datetaken:` | 按 拍摄日期搜索。 | `datetaken:03.03.2023` | 无 | 搜索 2023 年 3 月 3 日拍摄的文件，大多数情况下是照片。
`attribute:` | 按 文件属性 搜索。 | `attribute: HS` | 无 | 搜索文件属性为 H（隐藏）和 S（系统）的文件。
`keyword:` | 通过文件中的 关键词搜索 | `keyword: my_keyword` | 无 | 搜索标有关键字 "my_keyword "的文件（如 docx 文件）。
`owner:` | 按 文件所有者 搜索。 | `owner: John` | 无 | 搜索文件所有者名为 "John "的文件。
`author:` | 按 文件作者 搜索。 | `author: John` | 无 | 搜索文件作者名为 "John "的文件。

操作员 | 说明 | 示例 | 另一种形式： | 解释：
--- | --- | --- | --- | ---
`=` | 的财产必须适用。这是如果没有明确指定算符，则默认使用。 | `readme` | `name:=readme` | 搜索文件名包含 "readme "的所有文件。
`!=` | 不得应用 。 | `!=readme` | `name:!=readme` | 搜索所有不包含 "readme "的文件。
`~` | 可以与 `name:` 或 `content:` 属性结合使用。以下值是 Regular Expression （正则表达式），必须应用 于该属性。 | `~[0-9]` | `name:~[0-9]` | 搜索名称中至少有一位数的所有文件。
`!~` | 可以与 `name:` 或 `content:` 属性结合使用。以下值是 Regular Expression （正则表达式），不得应用 于该属性。 | `!~[0-9]` | `name:!~[0-9]` | 搜索名称中没有数字的所有文件。
`>` 或 `>=` | 操作符，用于大小或日期比较：属性必须大于（大于或等于）指定值。 | `size:>= 5MB` | 无 | 搜索大于或等于 5 MB 的所有文件。信息： 搜索仅涉及文件大小，不考虑文件夹大小。
`<` 或 `<=` | 操作符，用于大小或日期比较：属性必须小于（小于或等于）指定值。 | `size:<= 500MB` | 无 | 搜索小于或等于 500 MB 的所有文件。信息 ：搜索仅涉及文件大小，不考虑文件夹大小。
`( )` | 括号可用于对搜索输入的部分内容进行分组。 | `(readme, license)*.txt` | `(name:=readme OR name:=license) AND *.txt` | 搜索文件名中包含 "readme "或 "license "的所有文本文件。

会合： | 说明 | 示例 | 另一种形式： | 解释：
--- | --- | --- | --- | ---
空格或 `AND` | 合取搜索模式 必须全部匹配。如果没有明确指定连接，这就是默认连接。 | `readme ext:txt` | `name:=readme AND extension:=txt` | 搜索文件名包含 "readme "且文件扩展名为 "txt "的所有文件。
逗号或 `OR` | 至少 相关的搜索模式 必须匹配。 | `readme, movie` | `name:=readme OR name:=movie` | 搜索文件名中包含 "readme "或 "movie "的所有文件。

在指定值（更确切地说是实际搜索模式）时，有各种保留字符，如用于精确搜索的通配符或引号。下表列出了这些字符，并通过一些示例进行了解释。

示例值： | 说明 | 示例 | 另一种形式： | 结果
--- | --- | --- | --- | ---
`*readme*` | 搜索readme，可以任意数量的字符置于单词前后。单词 包含 “readme”。 | `*readme*` | `name:=*readme*` | 找到："123readme.txt"、"123readme.docx"，但没有找到："read_me.txt"、"reading.docx
`readme` | 对应 说明。为了简化，单词前后两个万用符可以省略。 | `readme` | `name:=readme` | 找到："123readme.txt"、"123readme.docx"，但没有找到："read_me.txt"、"reading.docx
`readme*` | 搜索readme，可以任意数量的字符置于单词后面，但不允许字符置于单词之前。单词 以'readme'开头 。 | `readme*` | `name:=readme*` | 找到："readme.txt"、"readme_c.docx"，但没有找到："123readme.txt"、"read_me.txt
`*readme` | 搜索readme，可以任意数量的字符置于单词前，但之后不允许字符。单词 以“readme”结尾 。 | `*readme` | `name:=*readme` | 找到："123readme"、"c_readme"，但没有找到："readme.txt"、"readme_c
`"readme"` | 单词搜索 可查找 "readme "一词的准确出现。它搜索准确出现的单词，而不考虑单词的部分或变体。这意味着搜索到的词必须作为一个独立完整的词出现在文本中，才能被识别为命中词。 | `"readme"` | `name:="readme"` | 找到："readme "或 "readme.txt"，但没有找到："readmes.txt"、"123readme
`"*read me*"` | 搜索带空格的单词。 | `"*read me*"` | `name:="*read me*"` | 找到："read me"、"read me.txt"，但没有找到："readme.txt"、"readme"
`rea?me` | 搜索以 'rea' 开头，'me' 结尾，并且 中间恰好 有一个字符的文件名。 | `rea?me` | `name:=rea?me` | 找到："readme"、"reasme"、"rea1me"，但没有找到："rea123me"、"readme.txt
`\*readme*` | 搜索路径中包含 "readme "的文件。 | `\*readme*` | `name:=\*readme*` | 找到：任何文件夹中的 "readme.txt"，"C:tempreadmelocal "中的 "abc.doc"。但不是："C:templocal "中的 "abc.doc"。