6

edismax ハンドラーを使用して lucene 構文でワイルドカード検索を行う際に問題が発生しています。トランクからSolr 4.0ナイトリービルドをしています。

「コンピューター」などの一般的な検索では結果が返されますが、「com er」では結果が返されません。同様に、'co?mput?r' などの検索でも結果は返されません。現在機能しているワイルドカード検索の唯一のタイプは、末尾にワイルドカードがあるもの (compute? や comput など) です。

先頭 ( puter ) と中間 ( com er )にワイルドカードを使用して検索できるようにしたいと考えています。誰かが私が間違っていることとそれを修正する方法を教えてください。

ありがとう。

よろしく、
イムラン。

4

2 に答える 2

5

逆文字列フィルターを有効にしない限り、先頭のワイルドカードは機能しません。Solr で使用するには、先頭のワイルドカードで検索するフィールドのアナライザーにReversedWildcardFilterFactoryを追加します。

0 の結果を返す他のクエリについては、luke を使用して、用語がどのように分析されているか (インデックスに格納されているか) を確認してみてください。ステミングを使用する場合は、ステミングの影響を考慮することを忘れないでください。

于 2010-07-12T14:38:21.443 に答える
0

edismax では、先頭のワイルドカードは問題ありません。私はちょうどそれを再テストしました。

ターム途中のワイルドカードも問題ありません。

他に何か問題があるようです。本当にedismaxを使用していますか?

于 2010-07-12T16:22:14.263 に答える