拼寫檢查(spellcheck)
首先配置 solrconfig.xml,檔案可能已經有這兩個元素(如果沒有新增即可),需要根據我們自己的系統環境做些適當的修改。
default
name
spellchecker
true
false
false
1spellcheck
配置完之後,需要重新建遍索引才能有效。然後我們這以請求 http://localhost:8080/solr/spell?q=name:王麻字&spellcheck=true
查詢如果如下:
<?xml version="1.0" encoding="utf-8"?>
00103
王麻子
有時候我們需要以多個欄位為依據進行拼寫檢查,但上面的配置只能設乙個字段。為了達到同樣的效果,
我能只能另行其道了。需要用到 coptyfield 技術。比如我們在 schema.xml 中定義了
然後配置 spellcheckcomponent 的字段為 ab 即可。
要作用solr的spellcheck功能,需要以下配置:
1. 在solrconfig.xml最後加入以下片段:
default
solr.indexbasedspellchecker
name_t
./spellchecker1
0.7true
jarowinkler
solr.indexbasedspellchecker
name_t
org.apache.lucene.search.spell.jarowinklerdistance
./spellchecker2
true
solr.filebasedspellchecker
file
spellings.txt
utf-8
./spellcheckerfile
true
text
file
true
true
1spellcheck
2. 如果使用file的方式,需要在spell.txt中加入相應的拼寫建議,每個拼寫建議佔一行。
3. 配置檔案修改完後,需要重做索引,這樣會在索引目錄裡出現下面的目錄
分別對應拼寫元件中每個spellchecker對應的索引檔案。
4. 在需要拼寫檢查的頁面加入如下方法:
/**
* * get spell suggestion from core
* ** @param keyword
* @param corename
* @return
* @throws exception
*/private collectiongetspellcheckfromcore(string keyword,string corename) throws exception
return suggestion;
}
可以把返回的結果直接顯示到頁面相應的地方。 Solr之拼寫檢查。
首先配置solrconfig.xml檔案可能已經有這兩個元素 如果沒有新增即可 需要根據我們自己的系統環境做些適當的修改。使用solrj時也同樣加入引數就可以。solrquery query new solrquery query.set q query.set qt spell queryresp...
SOLR拼寫檢查相關
6.8相似匹配 在我們使用網頁搜尋時,會注意到每乙個結果都包含乙個 相似頁面 鏈結,單擊該鏈結,就會發布另乙個搜尋請求,查詢出與起初結果類似的文件。solr 使用 morelikethiscomponent mlt 和 morelikethishandler 實現了一樣的功能。如上所述,mlt 是與...
solr拼寫檢查配置
拼寫檢查功能,能在搜尋時,提供乙個較好使用者體驗,所以,主流的搜尋引擎都有這個功能。solr是乙個基於lucene開發介面實現的成熟的搜尋系統,通過不同的控制項 component 實現不同的搜尋功能,其中乙個spellcheckcomponent實現了拼寫檢查功能。要在搜尋過程中新增拼寫檢查功能,...