我有一個導軌4應用程序在運行的schema.xml黑子的Solr與以下濾鏡的Solr沒有找到子串
<fieldType name="text" class="solr.TextField" omitNorms="false">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StandardFilterFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.EdgeNGramFilterFactory" minGramSize="2" maxGramSize="15" side="front"/>
<filter class="solr.NGramFilterFactory" minGramSize="1" maxGramSize="10"/>
<filter class="solr.TrimFilterFactory" />
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StandardFilterFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.PorterStemFilterFactory"/>
<filter class="solr.NGramFilterFactory" minGramSize="1" maxGramSize="10"/>
<filter class="solr.TrimFilterFactory" />
</analyzer>
</fieldType>
我有一個名爲「拉普德茲」我wan't城市被solr發現。 只要您開始輸入Alpe,Solr就會發現這條記錄,但我希望只需在「huez」中輸入即可找到它 這怎麼能實現?感謝您的幫助
此配置的偉大工程!非常感謝。你能解釋一下爲什麼不使用EdgeNGramFilterFactory有什麼不同? – dc10
EdgeNGramFilterFactory從標記的起點創建n-gram,而NGTF從兩端創建n個標記。
例如正克比較兩個factories-
令牌的招呼
EedgeNGFF:H,他,HEL,地獄,你好
NGFF:H,他,HEL,地獄,你好,hellow,E,埃爾,埃爾,ELLO, ellow,L,LL,LLO,llow,L,LO,低,鄰 –