Я использую lucene с solr для индексации некоторых документов (новостей).Эти документы также имеют заголовок.Теперь я пытаюсь выполнить фасетный поиск по полю HEADLINE, чтобы найти термины с наибольшим количеством.Все это работает без проблем, включая список стоп-слов.Поле HEADLINE является многозначным полем.Я использую solr.StandardTokenizerFactory
, чтобы разделить эти поля на отдельные термины (я знаю, это не лучшая практика, но это единственный способ, и он работает).
иногда токенизатор разделяет термины, которые не должныбыть разделенным, как 9/11
(который разделен на 9 и 11).Поэтому я решил использовать список «protword».«9/11» является частью этого списка прототипов.Но без изменений.
Вот часть из моего schema.xml
<fieldType name="facet_headline" class="solr.TextField" omitNorms="true">
<analyzer>
<tokenizer class="solr.StandardTokenizerFactory" protected="protwords.txt"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.TrimFilterFactory" />
<filter class="solr.StopFilterFactory"
ignoreCase="true"
words="stopwords.txt"
enablePositionIncrements="true"
protected="protwords.txt"
/>
</analyzer>
</fieldType>
, глядя на побочный эффект, я вижу много документов, связанных с "9/11", сгруппированных (ограненные) на «9» или «11», но никогда «9/11».
Почему это не работает?
Спасибо.