Я использую в Solr 6.41:
WordDelimiterFilterFactory
, чтобы искать строки, содержащие точки без них в запросе.
"00120123" (возвращая также результат 001.20.123)
Проблема состоит в том, что поле также предоставляет фасетку, которая теперь отображает токены вместо всего поля.
Токены создаются в поле типа text_wd:
<fieldType name="text_wd" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.WordDelimiterFilterFactory" preserveOriginal="1" catenateAll="1" />
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
<field name="refnumber" type="text_wd" indexed="true" stored="true" required="false" />
Фасеты, содержащие токены:
001 (1324)
20 (909)
123 (480)
Желаемая фасетка:
001.20.123
Как сохранитьжелаемый функционал и в то же время не иметь токены внутри фейстеты?