1

StandardAnalyzerでLuceneSearchEngine(v36)を使用しています。MultiFieldQueryParserを使用しています。

私のフィールドの1つは、英数字とポイントを含むバージョン名であるため、NOT_ANALYZEDとして設定されています。このフィールドに大文字が含まれている場合、検索結果は見つかりません。何か案が ?

詳細:

このフィールドには、次のような値が含まれています。

  • version1.26.12.test.a
  • version1.26.12.test.b
  • v1.2
  • version1.Dummy

私の検索では、上記の最初の3つの例の結果が返されますが、最後の例の結果は返されません。

私は、Collections.emptySet()で標準のストップワードをバイパスしたことを除いて、Luceneをまったくカスタマイズしていません。

どうもありがとう。ディミトリ

4

1 に答える 1

3

フィールドをNOT_ANALYZEDとしてマークすると、そのまま保存されると思いますが、 StandardAnalyzerはLowerCaseFilter(およびその他のリンクを参照)を使用します。したがって、「version1.Dummy」を検索すると、クエリ文字列はおそらく「version1.dummy」になり、保存されている文字列と一致しません。

于 2012-09-10T17:46:13.067 に答える