У меня неожиданные результаты с solr.SimplePatternSplitTokenizerFactory .Используемый шаблон на самом деле взят из примера в документации SOLR, и я не понимаю, где я допустил ошибку или почему она не работает должным образом.
Если мы возьмем входные данные примера «оперативный», анализатор покажетчто во время индексации вход разбивается на токены "ope", "a" и "ive", то есть токенизатор разделяется на символы "r" и "t" и не с ожидаемыми пробельными символами ( CR , TAB ).Просто чтобы быть уверенным, что я также пытался использовать более одного backspace в шаблоне (например, \ t и \\ t ), но это не изменило способ ввода входных данных во время индексации.
Чего мне не хватает?
Используется версия SOLR 7.5.0.
Определение типа поля в схеме следующее:
<fieldType name="text_custom" class="solr.TextField" positionIncrementGap="100" multiValued="true">
<analyzer type="index">
<tokenizer class="solr.SimplePatternSplitTokenizerFactory" pattern="[ \t\r\n]+"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.SimplePatternSplitTokenizerFactory" pattern="[ \t\r\n]+"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.SynonymGraphFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
Обновление нашел это сообщение в архиве списка рассылки "Solr - Пользователь": http://lucene.472066.n3.nabble.com/Solr-Reference-Guide-issue-for-simplified-tokenizers-td4385540.html
Кажется, что документация (или пример) не верна / работает.Следующее использование токенизатора работает по назначению:
<tokenizer class="solr.SimplePatternSplitTokenizerFactory" pattern="[ 	

]+"/>