Как настроить Solr для разбивки на пробелы и знаки препинания?
Я пытался получить мою схему Solr (используя Solr 1.3.0) для создания терминов, которые были бы разбиты на символы пробела и пунктуации. Вот несколько примеров того, что я хотел бы увидеть:
terms given -> terms tokenized
foo-bar -> foo,bar
one2three4 -> one2three4
multiple words/and some-punctuation -> multiple,words,and,some,punctuation
Я думал, что эта комбинация будет работать:
<fieldType name="text" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1"/>
</analyzer
<fieldType>
Проблема состоит в том, что это приводит к следующему для преобразования букв в числа:
one2three4 -> one,2,three,4
Я пробовал различные комбинации WordDelimiterFilterFactory
настройки, но ни один не оказался полезным. Есть ли фильтр или токенизатор, который может обрабатывать то, что мне нужно?
1 ответ
Решение
Как насчет
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" splitOnNumerics="0" />
это должно предотвратить разделение one2three4