1

Lukeでは、検索式を入力するとdocfile:Tomatoes.jpg*、解析されるクエリはdocfile:Tomatoes.jpg*です。検索式がdocfile:Tomatoes.jpg、(アスタリスク*なし)の場合、解析されるクエリはdocfile:tomatoes.jpg小文字の「t」を使用します。

  1. なんで?
  2. どうすればこれを変更できますか?

ところで、org.apache.lucene.analysis.standard.StandardAnalyzerを使用しています。

4

2 に答える 2

4

StandardAnalyzerこれはLowerCaseFilter、クエリとデータを小文字にすることを意味します。これについては、Javadochttp://lucene.apache.org/java/3_0_1/api/core/org/apache/lucene/analysis/standard/StandardAnalyzer.htmlで説明されています

私が正しく覚えている場合WhitespaceAnalyzerは小文字ではありませんが、ニーズに合っていることを確認してくださいhttp://lucene.apache.org/java/3_0_1/api/core/org/apache/lucene/analysis/WhitespaceAnalyzer.html

于 2011-05-18T19:33:39.070 に答える
1

Lucene 5.3.0の場合、SimpleAnalyzerを使用して問題を解決しました。

例:

Analyzer analyzer = new org.apache.lucene.analysis.core.SimpleAnalyzer();

最後に、同じアナライザーを使用してインデックスを作成し、検索します。

于 2017-01-03T15:40:13.257 に答える