Можете ли вы использовать приведенный ниже тип поля для своего поля:
<fieldType name="text_wd" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<!-- Splits words based on whitespace characters -->
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<!-- splits words at delimiters based on different arguments -->
<filter class="solr.WordDelimiterGraphFilterFactory" preserveOriginal="1" catenateNumbers="1"/>
<!-- Transforms text to lower case -->
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
Здесь WordDelimiterGraphFilterFactory
имеет много атрибутов, и их использование поможет вам достичь желаемого результата.Вы можете узнать больше о WordDelimiterGraphFilterFactory
здесь
, например catenateWords
или catenateAll
или catenateNumbers
.Измените атрибуты согласно требованию.После внесения изменений может потребоваться перезапустить сервер.Вы можете попробовать и протестировать их с помощью интерфейса администратора Solr.