拼寫檢查功能,能在搜尋時,提供乙個較好使用者體驗,所以,主流的搜尋引擎都有這個功能。
solr是乙個基於lucene開發介面實現的成熟的搜尋系統,通過不同的控制項(component)實現不同的搜尋功能,其中乙個spellcheckcomponent實現了拼寫檢查功能。
要在搜尋過程中新增拼寫檢查功能,必須在solr的solrconfig.xml中配置spellcheck控制項,並在相關searchhandler(select/query等)中新增拼寫檢查引數配置。
配置如下:
1配置好spellcheckcomponent元件後,需要配置相應的searchhandler,在正式搜尋系統應用中需要配置select和query,自己測試時可以自定義乙個,如:spell,配置如下:8<
searchcomponent
name
="spellcheck"
class
="solr.spellcheckcomponent"
>910
11<
str
name
="queryanalyzerfieldtype"
>text_general
str>
1213
1617
18<
lst
name
="spellchecker"
>
1920
<
str
name
="name"
>default
str>
2122
<
str
name
="field"
>text
str>
2324
<
str
name
="classname"
>solr.directsolrspellchecker
str>
2526
<
str
name
="distancemeasure"
>internal
str>
2728
<
float
name
="accuracy"
>0.5
float
>
2930
<
int
name
="maxedits"
>2
int>
3132
<
int
name
="minprefix"
>1
int>
3334
<
int
name
="maxinspections"
>5
int>
3536
<
int
name
="minquerylength"
>4
int>
3738
<
float
name
="maxqueryfrequency"
>0.01
float
>
3942
lst>
4344
45<
lst
name
="spellchecker"
>
46<
str
name
="name"
>wordbreak
str>
47<
str
name
="classname"
>solr.wordbreaksolrspellchecker
str>
48<
str
name
="field"
>text
str>
49<
str
name
="combinewords"
>true
str>
50<
str
name
="breakwords"
>true
str>
51<
int
name
="maxchanges"
>10
int>
52lst
>
5354
5565
6673
8081
8291
searchcomponent
>
<在solr中測試如下:requesthandler
name
="/spell"
class
="solr.searchhandler"
startup
="lazy"
>
<
lst
name
="defaults"
>
<
str
name
="df"
>text
str>
<
str
name
="spellcheck.dictionary"
>default
str>
<
str
name
="spellcheck.dictionary"
>wordbreak
str>
<
str
name
="spellcheck"
>on
str>
<
str
name
="spellcheck.extendedresults"
>true
str>
<
str
name
="spellcheck.count"
>10
str>
<
str
name
="spellcheck.alternativetermcount"
>5
str>
<
str
name
="spellcheck.maxresultsforsuggest"
>5
str>
<
str
name
="spellcheck.collate"
>true
str>
<
str
name
="spellcheck.collateextendedresults"
>true
str>
<
str
name
="spellcheck.maxcollationtries"
>10
str>
<
str
name
="spellcheck.maxcollations"
>5
str>
lst>
<
arr
name
="last-components"
>
<
str>spellcheck
str>
arr>
requesthandler
>
Solr拼寫檢查(spellCheck)配置和使用
solr具有拼寫檢查的功能,您只需修改solr的配置檔案 solrconfig.xml 中spellcheck部分 textspell solr.filebasedspellchecker file spellings.txt utf 8 spellcheckerfile 其中spelling.tx...
Solr拼寫檢查(spellCheck)配置和使用
solr具有拼寫檢查的功能,您只需修改solr的配置檔案 solrconfig.xml 中spellcheck部分 textspell solr.filebasedspellchecker file spellings.txt utf 8 spellcheckerfile 其中spelling.tx...
Solr之拼寫檢查。
首先配置solrconfig.xml檔案可能已經有這兩個元素 如果沒有新增即可 需要根據我們自己的系統環境做些適當的修改。使用solrj時也同樣加入引數就可以。solrquery query new solrquery query.set q query.set qt spell queryresp...