我使用的是Lucene 6.0.0,並猜測我的問題可以通過FuzzuQuery
來解決,假設在Lucene中支持editDistance > 2
。Lucene搜索最長公共子字符串
我正在使用普通的Java Lucene API(不是SOLR或ElasticSearch)。
可以說,非 - 申請記號化索引的文本 - This is Ram's House
,當我與Ram
或ram
搜索,我應該得到This is Ram's House
的比賽,因爲三個連字符在某種意義上相匹配,以便 - 這是與更多種類的模糊匹配要求比兩個編輯距離。
用My name is Ram and my brother's name is Shyam
搜索也應該給我This is Ram's House
作爲匹配。
最長公共子字符串可以有最小字符數限制,目前我們應該罰款三個作爲限制。
根據我們的分析,有一個業務問題可以通過這種方式解決。
Lucene可能嗎?
可以使用任何其他工具 - 如SOLR,ElasticSearch等?
您的兩個例子應該只是典型的精細分析,在不使用的所有FuzzyQueries。你遇到了什麼問題? – femtoRgon
你是什麼意思?我正在使用'StandardAnalyzer',而不是在索引時標記文本字段。我沒有與'FuzzyQuery','WildCardQuery','TermQuery'或'PhraseQuery'匹配,所以我不確定在索引方面需要更改什麼以及在搜索方使用哪種查詢。 –
當然不是,它沒有標記。所以...爲什麼你不把這個領域標記出來? – femtoRgon