1. 程式人生 > >ElasticSearch檢索時特殊字元處理

ElasticSearch檢索時特殊字元處理

ElasticSearch檢索時,出現特殊字元而沒有做正確的處理,那麼ElasticSearch將無法識別這條檢索語句,則會丟擲異常,此時就的對檢索語句進行轉義;

例如:

String title = "title+-&&||!(){}[]^\"~*?:\\";
title = QueryParser.escape(title);  // 主要就是這一句把特殊字元都轉義,那麼lucene就可以識別
searchRequestBuilder.setQuery(QueryBuilders.fieldQuery("title", title));

特殊字元如下

特殊符號

:如果所查詢的詞中本身包含關鍵字

,則需要用\進行轉義。

8/23/2017 1:54:47 PM