目錄
一 字段搜尋
二 通配符
三 正則
四 模糊搜尋
五 近似搜尋
六 範圍搜尋
七 邏輯操作
八 分組
九 轉義特殊字元
十 lucene 文法參考
一 字段搜尋
限定字段全文搜尋 :field:value
精确搜尋 :filed:"value"(關鍵字加上雙引号 )
字段本身是否存在
_exists_:http :傳回結果中需要有 http 字段
_missing_:http :不能含有 http 字段
二 通配符
? 比對單個字元
* 比對0到多個字元
kiba?a, el*search
? * 不能用作第一個字元,例如 :?text *text
三 正則
es支援部分正則功能
mesg:/mes{2}ages?/
四 模糊搜尋
~ : 在一個單詞後面加上~啟用模糊搜尋
first~ 也能比對到 frist
五 近似搜尋
在短語後面加上~
"select where"~3 表示 select 和 where 中間隔着3個單詞以内。
六 範圍搜尋
數值和時間類型的字段可以對某一範圍進行查詢
status:[200 TO 400]
date:{"now-6h" TO "now"}
[ ] 表示端點數值包含在範圍内,{ } 表示端點數值不包含在範圍内。
七 邏輯操作
AND
OR
+ :搜尋結果中必須包含此項
- :不能含有此項
+apache -jakarta test :結果中必須存在 apache,不能有 jakarta,test 可有可無。
八 分組
(jakarta OR apache) AND jakarta
字段分組
title:(+return +"pink panther")
九 轉義特殊字元
+ - && || ! () {} [] ^" ~ * ? : \
以上字元當作值搜尋的時候需要用\轉義