0

StandardAnalyzer を使用してインデックス化された lucene インデックスがあります。インデックスは値「AND」で構成されます。MultiFieldQueryParser を使用してフィールド値を検索しようとすると、検索でエラーが発生します。

例: field1:* AND field2:AND

fields1:* AND field:"AND"

エスケープを試みましたが、それはフィールド値をエスケープしています。ダブルコート(「AND」)でも試しました。しかし、正しい値を取得することに成功できませんでした。

この点に関するアドバイスは役に立ちます。

前もって感謝します。

4

1 に答える 1

0

ここではおそらく2つの問題があると思います。

  • クエリ構文、「and」を小文字にすることでさらに進むと思います。標準クエリパーサーのブール用語は大文字である必要があります。とにかく、標準アナライザーのステップの1つが大文字と小文字の区別を下げることであることを考えると、これは問題にはならないはずです。
  • 次の問題はストップワードです。「and」は、標準のアナライザーのストップワードリストによって分析された用語のセットから除外されていると思います。これを回避するには、用語として「and」を除外しない標準のアナライザーで別のストップワードリストを使用します。

幸運を、

于 2013-02-20T16:45:04.313 に答える