Solrでストップワードのあるフレーズを検索しているときに問題が発生しました。Solrはストップワードで結果を送信しますが、これは私の期待する出力ではありません。
stopwords.txt
ファイルに「test」という単語を追加しました。schema.xml
ファイルには、次のようなフィールドがあります
<field name="searchword" type="text" indexed="true" stored="true" />
いくつかのデータにインデックスを付けてから、次のようにSolrブラウザーウィンドウで検索しようとしました:searchword: "test"、そして結果が得られませんでした。それからまた、searchwordのようなフレーズを与えました:「テストデータ」そして私は結果を得ました。そのようなシナリオを回避する方法は?ストップワードが含まれている場合、Solrは結果を出さないはずです。フレーズにストップワードが含まれている場合、solrで結果を停止するにはどうすればよいですか?
以下は、私が使用しているfieldTypeです。
<fieldType name="text" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.CommonGramsFilterFactory" words="stopwords.txt" ignoreCase="true"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.WhitespaceTokenizerFactory" />
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" type="phrase"/>
</analyzer>
</fieldType>
ストップワードを含むフレーズを指定している間、Solrが結果を提供しないための解決策が必要です(テスト)