https://segmentfault.com/a/1190000002972420

通配符
? 匹配单个字符
* 匹配0到多个字符

kiba?a, el*search

? * 不能用作第一个字符,例如:?text *text

====================

正则
es支持部分正则功能,性能较差
name:/joh?n(ath[oa]n)/

====================

模糊搜索
quikc~ brwn~ foks~
~:在一个单词后面加上~启用模糊搜索,可以搜到一些拼写错误的单词

first~ 这种也能匹配到 frist

还可以设置编辑距离(整数),指定需要多少相似度
cromm~1 会匹配到 from 和 chrome
默认2,越大越接近搜索的原始值,设置为1基本能搜到80%拼写错误的单词

====================

逻辑操作
AND
OR

+:搜索结果中必须包含此项
-:不能含有此项
+apache -jakarta test aaa bbb:结果中必须存在apache,不能有jakarta,剩余部分尽量都匹配到

====================

分组
(jakarta OR apache) AND jakarta

====================

转义特殊字符
+ - = && || > < ! ( ) { } [ ] ^ " ~ * ? : \ /
以上字符当作值搜索的时候需要用\转义
\(1\+1\)\=2用来查询(1+1)=2

====================