UAX29URLEmailTokenizerFactory トークナイザーを使用して、SOLR でいくつかの URI のインデックスを作成しています。問題は、一部の URI にプラス文字が含まれていることです。これは、SOLR が空白として解釈し、URI を分割します。この問題は、「+」文字を巧妙にエスケープすることで解決できますか? アナライザーで「+」を試しましたが、同じ結果が得られました。フィールドの正確な構成は次のとおりです。
<fieldType name="text_general" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.UAX29URLEmailTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.UAX29URLEmailTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>