欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Lucene的搜索類(lèi)型有哪些

這篇文章主要介紹“Lucene的搜索類(lèi)型有哪些”,在日常操作中,相信很多人在Lucene的搜索類(lèi)型有哪些問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”Lucene的搜索類(lèi)型有哪些”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!

為蘆溪等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及蘆溪網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、蘆溪網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專(zhuān)業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!

 Lucene對(duì)于查詢的方式較多,可以實(shí)現(xiàn)TermQuery、BooleanQuery、PhraseQuery、 TermRangeQuery等一系列的基于不同類(lèi)型的詞組的檢索。在進(jìn)行查詢的時(shí)候可以選擇合適的查詢方式對(duì)文檔進(jìn)行查詢。例如數(shù)值類(lèi)型可以采用TermRangeQuery進(jìn)行查詢。

查詢方式大覽

  • TermQuery(詞條搜索) 詞條搜索,根據(jù)單個(gè)單詞進(jìn)行查找的方式進(jìn)行檢索,Term表示的是一個(gè)個(gè)的單詞,而在中文環(huán)境下則表示的是一個(gè)個(gè)的詞語(yǔ)(分詞后的詞語(yǔ))。例如查詢標(biāo)題中包含PHP的文檔。

    Query query = new TermQuery(new Term("title","PHP"))
  • BooleanQuery(組合搜索) BooleanQuery是合并多個(gè)查詢條件的Query,例如合并TermQuery實(shí)現(xiàn)查詢 標(biāo)題中包含PHP并且content中同樣包含PHP的文檔。

    BooleanQuery query = new BoolQuery();
    query.add(new TermQuery(new Term("title","PHP")));
    query.add(new TermQuery(new Term("content","PHP")));
  • PhraseQuery(短語(yǔ)搜索) 短語(yǔ)查詢提供的是類(lèi)似于多個(gè)關(guān)鍵詞的查詢,Term輸入的只有一個(gè)詞,而PhraseQuery查詢的是一組詞。例如查詢 PHP是世界上最好的語(yǔ)言 就會(huì)給予出相關(guān)的文檔。PhraseQuery同樣有一個(gè)比較特殊的地方,就是slop,slop是指兩個(gè)項(xiàng)之間允許的最大間隔。例如我們輸入的查詢條件為 世界,語(yǔ)言,可能中間缺少了 上、最好、的 就無(wú)法進(jìn)行檢索。那么如果我們想要檢索到結(jié)果就需要設(shè)置slop。

    PhraseQuery query = new PhraseQuery();
    query.add(new Term("title","世界"));
    query.add(new Term("title","語(yǔ)言"));
    query.setslop(x); //允許的跨度或說(shuō)間隔
  • PrefixQuery(前綴查詢) 前綴查詢,類(lèi)似于我們常寫(xiě)的SQL LIKE "PHP%"進(jìn)行匹配查詢,簡(jiǎn)單來(lái)說(shuō)就是實(shí)現(xiàn)通過(guò)前綴的詞進(jìn)行查詢

    PrefixQuery query = new PhrefixQuery(new Term("title","PHP"));
  • FuzzyQuery(模糊查詢) 模糊查詢,它實(shí)現(xiàn)的是一種基于編輯距離相似度的檢索。編輯距離算法的大概意思就是一個(gè)詞組轉(zhuǎn)換到另一個(gè)詞組的最小距離。

    FuzzyQuery query = new FuzzyQUery("title","PHP");
  • RegexpQuery(正則表達(dá)式查詢) 相信正則表達(dá)式大家都了解,Lucene實(shí)現(xiàn)正則表達(dá)式檢索是基于詞組的正則表達(dá)式檢索方式

    RegexQuery query = new RegexQuery(new Term("title",".*PHP.*"));
  • TermRangeQuery() TermRangeQuery實(shí)現(xiàn)的是字符串的范圍查詢,那么既然是范圍同時(shí)有在字符串中進(jìn)行范圍檢索的其實(shí)是檢索的ASCII碼值。但是其實(shí)中文場(chǎng)景中比較ASCII碼的場(chǎng)景不是很多。(我只用過(guò)正則匹配),可以大概的熟悉一下,構(gòu)造函數(shù)為 TermRangeQuery(String field, String lowerTerm, String upperTerm, boolean includeLower, boolean includeUpper)

    TermRangeQuery query = new TermRangeQuery("title","PHP","語(yǔ)言",true,false);

到此,關(guān)于“Lucene的搜索類(lèi)型有哪些”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!

網(wǎng)頁(yè)名稱:Lucene的搜索類(lèi)型有哪些
網(wǎng)站網(wǎng)址:http://chinadenli.net/article24/ppghje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃品牌網(wǎng)站建設(shè)、Google、品牌網(wǎng)站制作自適應(yīng)網(wǎng)站、外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)