好像你需要配置該領域使用solr.KeywordTokenizerFactory作爲其分詞器。
由於名稱沒有真正表達,這個標記器將把底層字段作爲一個單獨的標記進行處理,使用空格,字母到數字,數字到字母的轉換,標點和所有標記(除非你也有這些字符過濾器)。
我不是最新的細節目前配置Solr的,但我猜對上述領域的架構中的條目可以期待類似的東西:
<fieldtype name="myProductNumberFIeld" class="solr.TextField">
<analyzer>
<!-- can have a few filters of course -->
<charFilter class="solr.MappingCharFilterFactory"
mapping="mapping-ISOLatin1Accent.txt"/>
<filter class="solr.LowerCaseFilterFactory"/>
<!-- etc. -->
<!-- That's the main thing you need -->
<tokenizer class="solr.KeywordTokenizerFactory"/>
</analyzer>
</fieldtype>
更普遍的,你會想爲產品編號,零件編號,UPC等定義一個相當具體的分析儀,作爲改善對這些字段的回憶的一種方式,因爲用戶並不總是知道這些標識符的具體格式(標點符號和其他分隔符(如果有的話)應該是等等)。
然而,使用不同分析器的問題在於,它可以防止將字段與常規文本搜索相關聯,因爲在重要時間,只能有一種方法來處理用戶的查詢。
來源
2010-12-13 17:01:37
mjv