솔라의 단점 인 공백이있는 용어에 대해 동의어를 사용하려고합니다. 해킹하기 위해, 나는 하이픈과 공백을 대체 할 PatternReplaceCharFilterFactory을 사용하고 내 동의어 하이픈하기 위해 노력하고있어 : 분석 도구를 사용하여Multi-word 동의어에 PatternReplaceCharFilterFactory 사용
<fieldType name="special_synonyms" class="solr.TextField">
<analyzer type="index">
<tokenizer class="solr.KeywordTokenizerFactory"/>
<filter class="solr.StandardFilterFactory"/>
<filter class="solr.LowerCaseFilterFactory" />
<filter class="solr.EdgeNGramFilterFactory" minGramSize="2" maxGramSize="100" />
<filter class="solr.WordDelimiterFilterFactory"
generateWordParts="1"
generateNumberParts="1"
catenateWords="1"
catenateNumbers="1"
catenateAll="0"
preserveOriginal="1"
/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.KeywordTokenizerFactory"/>
<charFilter class="solr.PatternReplaceCharFilterFactory" pattern="([/\s+])" replacement="-" />
<filter class="solr.KStemFilterFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
</analyzer>
을 내 여러 단어 검색어를 입력했을 때 올바른 동의어를 얻을 ,하지만 내가 수동으로 하이픈을 직접 추가하지 않으면 쿼리를 실행하면 0 개의 결과를 찾습니다.