0
我想用一個模式,其中一個過濾器後,被稱爲空格標記生成器IST之後,所有其他過濾器應適用:如何在solr中的過濾器之間使用標記器?
<filter class="solr.SynonymFilterFactory" tokenizerFactory="solr.KeywordTokenizerFactory" synonyms="german/synonyms.txt" ignoreCase="true" expand="true"/>
<!-- Case insensitive stop word removal.
add enablePositionIncrements=true in both the index and query
analyzers to leave a 'gap' for more accurate phrase queries.
-->
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.WordDelimiterFilterFactory"
generateWordParts="1"
generateNumberParts="1"
catenateWords="1"
catenateNumbers="1"
catenateAll="0"
splitOnCaseChange="1"
preserveOriginal="1"
/>
Solr的只適用於過濾器之間的新秩序,但標記生成器被調用之前每個過濾器...
有沒有人有線索?
最好的問候,hijolan
我已經嘗試過使用其他tokenizer類似KeywordTokenizerFactory,並在此之後應用同義詞列表。除同義詞過濾器之外的所有其他過濾器都會分配額外的Whitespace-Tokenizer。這有效,我的同義詞是正確的。 但是,如果我在分析器中查看,我還會使用空格將分割的字符串再次分割出來。 例如:Nullam consequat,sem vitae => Nullam consequat,sem vitae | Nullam | consequat | sem |簡歷 –
不確定,如果我理解你的話:'KeywordTokenizerFactory'應該處理你的單詞/術語而不做任何改變。 「solr.WordDelimiterFilterFactory」可能會將您的單詞/術語分割爲更多的空白處。看看'solr.WordDelimiterFilterFactory'手動:'在字內分隔符(所有非字母數字字符)上進行拆分.' ...其中空格不是字母數字 –