# 布尔表达式 | Top Previous Next

FileLocator Pro的布尔表达式引擎支持网页式的搜索表达式，可采用AND、OR、NOT、NEAR、REGEX、LIKE 操作符。在 选项页签 中可以将FileLocator Pro设置为匹配整个文件（默认），或者匹配逐行。 逐行 示例 表达式 work AND document 会搜索包含 work 与 document 的行。由于FileLocator Pro 隐含带有AND，此表达式还可以写为 work document 。 表达式 work OR document 会搜索包含'work' 或 'document' 的行。 表达式 work NOT document 会搜索包含'work'但不包含 'document'的行。 整个文件 示例 表达式 work AND document 搜索包含 work 与 document 的文件。这两个词可能在同一行或者整个文件中的不同行。 表达式 work NOT document 搜索文件中包含 work 但不包含 document 的文件。 注：操作符 AND、OR、NOT必须是大写字母，否则会作为搜索词。 可以使用引号来搜索词组本身，如： "work document" 会搜索确切的词组 work document。 可以使用括号指定词组分组，如： 表达式 work AND (document OR letter) 会搜索包含 work，并且包含 document 或 letter 的行。 LIKE 操作符 如果不确定搜索词的拼写，或者在搜索文本中搜索词可能会被误拼，那么可用LIKE操作符指定一个大致的搜索词。例如： LIKE necessary 将不仅找到 necessary ，而且还有像 neccessary 这样含有稍微变化的词。可以在 配置 中更改相似程度。 NEAR 操作符 要指定在搜索条件中的两个搜索词应当彼此靠近，请使用NEAR操作符。例如： work NEAR document 只匹配距离在一定字符数之内的搜索词（最大字符距离可在 配置 中指定）。表达式中可以指定最大距离，例如： work NEAR:20 document 搜索时最大距离会改为20个字符。 REGEX 操作符 要指定一个词组为正则表达式，请使用REGEX操作符。例如： work AND REGEX "\d{5,6}" 会匹配包含单词 work ，还含有正则表达式 \d{5,6} （即一个5-6位的数字）的文档。要指定每次都将搜索词看作正则表达式，即不需要用REGEX操作符，请使用布尔正则表达式类型（见下文） LINES 操作符 LINES操作符对跟在后边的表达式限定了搜索行。例如： LINES:3-5 (tower AND london) 将仅在第3、4、5行搜索表达式 tower AND london。 LINES:10+ (tower AND london) 将搜索第10行以后的行。 FILELIST 操作符 FILELIST操作指定了加载的 文件列表 。例如： work AND FILELIST "C:\TermList.txt" 备注：因为明确使用了FILELIST操作符，所以 文件列表 不论设置如何，都会生效。 布尔子表达式 布尔表达式由子表达式组成。子表达式的类型是选用的 表达式类型 。
布尔 (无通配符1) | 完全按照输入的词组匹配，还会部分匹配。 例如： fish 将会匹配 fish, fishing and selfish。
布尔 (有通配符1) | 可以用通配符'*' 和 '?'字符。'?' 将匹配任何单个字符，而'*'将匹配单词零个或多个字符，直到单词结尾。 例如： fish* 将匹配单词fish 、fishing 、 selfish。 通配符还允许匹配边界，方法是通过使用字符'<' 和 '>' 指定单词的开始和结尾，例如： <fish> 将仅匹配完整单词 fish ，不会匹配 fishing 或 selfish 。类似地， fish> 会匹配 fish 和 selfish ，但不会匹配 fishing ，因为单词必须以 fish 结尾。 要搜索fish* 或 fish> 文本本身，请将搜索词放入引号中，如："fish*" 或 "fish>"
布尔正则表达式 | 将每个词组作为正则表达式。正则表达式如果含空格或括号，请用引号括起。 例如： trout.* OR "fish(es|ing)"
全字匹配 | 完全按照输入的用每个词组匹配。 例如： fish 将仅匹配单词 fish ，而不会匹配 fishing 或 selfish 。
1 在 选项页签 中可以指定通配符的设置 （默认为允许通配符）。 示例：布尔正则表达式 使用布尔正则表达式类型的搜索，可以用操作符AND、OR、NOT合并多个正则表达式。正则表达式是按行来进行匹配，而对这些正则表达式的结果，布尔表达式要如何组合起来判断，即按逐行，还是按整个文件，可在 选项页签 中定义。 逐行 示例 表达式 [0-9]+ AND document 搜索包含一个数字与单词 document 的行。 表达式 "[a-z]+@[a-z]+" NOT "\.(com|net)" 搜索像电邮地址，但不包含 .com 或 .net 的行。注意，这里用了引号表示正则表达式分组（一般布尔表达式分组是用括号）。 整个文件 示例 表达式 "([0-9]+\.){3}[0-9]+" AND error 搜索包含IP地址以及单词 error 的文件，而它们不必在同一行出现。 用了引号标出表达式中子正则表达式。 备注：布尔正则表达式类型的搜索很复杂，通常比别的类型慢。所以，推荐只在需要其特定功能时才使用。

Copyright © 2023 Mythicsoft Ltd. All rights reserved.
Help file version: 9.0
PDF and CHM versions of this help file are available here:
http://mythicsoft.com/filelocatorpro/help