2014-10-10 107 views
1

我想使用Solr SpellCheckComponent/Suggester根據查詢詞和模糊搜索+通配符搜索獲取查詢詞建議。例如,/ suggest?q = spackove會返回stackoverflow。Solr拼寫檢查/建議和模糊搜索v4.8.1

現在我有以下元素,但只有通配符搜索才能工作,即使在更改拼寫檢查精度屬性時也是如此。沒有對模糊匹配進行修正,只返回不正確的拼寫條目。 spellcheck.build = true已執行。我錯過了什麼?

config.xml文件:

<searchComponent name="suggest" class="solr.SpellCheckComponent"> 
    <lst name="spellchecker"> 
     <str name="name">suggest</str> 
     <str name="classname">org.apache.solr.spelling.suggest.Suggester</str> 
     <str name="lookupImpl">org.apache.solr.spelling.suggest.jaspell.JaspellLookupFactory</str> 
     <str name="field">STREETNAME_DUTCH_EXACT</str> 
    </lst> 
</searchComponent> 

<requestHandler name="/suggest" class="org.apache.solr.handler.component.SearchHandler"> 
    <lst name="defaults"> 
    <str name="spellcheck">true</str> 
    <str name="spellcheck.dictionary">suggest</str> 
    <str name="spellcheck.count">30</str> 
</lst> 
<arr name="components"> 
    <str>suggest</str> 
</arr> 
</requestHandler> 

親切的問候,

S.牛

回答

0

你應該在你的搜索組件使用精度場。 <str name="accuracy">0.7</str>

這等於說fieldVelue~0.7

順便說在你的「計算器」的版本,因爲你的文字是從原來的很多不同勢,你應該使用較小的值。