2016-12-22 7 views
0

私はこの記事と同じ質問ですが、1つの違いがあります。私はelasticsearch APIを使用してテキストを分析する必要がありますが、search_analyzerをフィールドとして呼び出してください。elasticsearchを使用してテキストでsearch_analyzerを呼び出します。java api

(前の回答)how to analyze text in elasticsearch using java api?

私が気にフィールドアナライザおよびカスタム・アナライザの両方を持っています。

 "body": { 
      "type": "string", 
      "fields": {"exact":{"type":"string"}}, 
     "analyzer" : "customfullTextUAX", 
     "search_analyzer" : "customfullText" 
     } 

...

私はそれがアナライザを使用して解析するために呼び出しされている、と私はsearch_analyzerを呼ぶような任意の設定を把握することはできませんコード:そうのように。

コード私が使用:

AnalyzeRequest ac = new AnalyzeRequest(index).field(field).text(text).explain(true); 
DetailAnalyzeResponse dar = iac.analyze(ac).actionGet().detail(); 

答えて

1

あなたが明示的にAnalyzeRequestではなく、検索アナライザを使用するように指示する必要があります。

AnalyzeRequest ac = new AnalyzeRequest(index) 
    .field(field) 
    .analyzer("customfullText")   <--- add this 
    .text(text) 
    .explain(true); 
DetailAnalyzeResponse dar = iac.analyze(ac).actionGet().detail(); 
+0

おかげで、私が考えていたかについてのthats。 –

+0

クール、嬉しい助け! – Val

+0

アナライザー名customfullTextを簡単に見つける方法はありますか? –

関連する問題