语法关键字: + - &$ || ! () {} [] ^ " ~ * ? : \。
查询 Term
- 单一查询词,eg:"hello"
- 词组 phrase,eg:"hello world"
查询 Field
使用域名和关键字:,:仅对紧跟其后的查询词其作用,或者用"引起来。
eg: title:"just do it"。
通配符 Wildcard
?: 表示单个字符。*: 表示多个字符。
通配符不能出现在查询词的开始。
eg: te?t、test*。
模糊查询 Fuzzy
模糊查询时基于 Levenshtein Distance 编辑距离,当两个词的差别小于某个比例时,就算匹配。
eg: helol~0.8,表示差别小于 0.2,相似度大于 0.8 才算匹配。
临近查询 Proximity
词组后面紧跟~n,表示词组中的多个词之间的局里之和不超过 n,则满足查询。
词间距离,即词组中词为了和目标词相同所需的最小移动次数。
eg: 索引中的词组apple boy cat,查询为"boy apple cat"~2可以匹配,但是"boy apple cat"~1则不能匹配。
区间查询 Range
分为包含边界[A TO B]和不包含边界{A TO B}。
增加 Term 权重 Boost
通过在词的后面使用^n来设定词的权重,默认是 1。
布尔操作
AND OR NOT 和 + -