형태소 분석과 일부 개선 된 기능을 사용하기를 희망하여 일부 필드를 text_general
에서 text_en
으로 변경했지만 변경 사항이 부각되었습니다. 그것은 말미가없는 단어 (즉 줄기 버전이 "아동"과 같은 단어 자체와 동일한 단어) 만 강조 표시하려는 것으로 보입니다.Solr : 줄 바꿈 중단 강조 표시
나는 기본 fieldType 정의를 사용하고 있습니다 :
<fieldType name="text_en" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StopFilterFactory"
ignoreCase="true"
words="lang/stopwords_en.txt"
/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.EnglishPossessiveFilterFactory"/>
<filter class="solr.KeywordMarkerFilterFactory" protected="protwords.txt"/>
<filter class="solr.PorterStemFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.StopFilterFactory"
ignoreCase="true"
words="lang/stopwords_en.txt"
/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.EnglishPossessiveFilterFactory"/>
<filter class="solr.KeywordMarkerFilterFactory" protected="protwords.txt"/>
<filter class="solr.PorterStemFilterFactory"/>
</analyzer>
</fieldType>
을 그리고 내 쿼리 hl.fl=title&hl=true
으로 강조 가능하게한다. 이것이 중요하다면 이것은 또한 패싯 검색입니다.
내가 말했듯이, "아동"과 같은 언성 단어 만 강조 표시됩니다. text_en
정의에서 인덱스 분석기에서 형태소 분석 필터를 제거하면 (쿼리 분석기는 효과가없는 것으로 나타남), 중지 단어를 제외한 모든 일치 단어가 강조 표시됩니다. 또한, text_en
을 EnglishMinimalStemFilterFactory
으로 변경하면 더 많은 단어가 강조 표시됩니다.이 단어는 포터 줄기에 의해 줄기가 있지만이 옆에 줄기가있는 것으로 간주됩니다. 그러한 단어의 예로는 "strides"가 있습니다.
무슨 일이 일어나는지 아는 사람 있습니까?
같은 문제가있어 어떤 도움을 주시면 감사하겠습니다. – mindfxxxedCoder
혹시이 문제를 해결 했습니까? –
아니요 형태소 분석을 사용하지 않도록 설정 :( – nvioli