国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Elasticsearch實戰(zhàn)(四)---中英文分詞及拼音搜索

這篇具有很好參考價值的文章主要介紹了Elasticsearch實戰(zhàn)(四)---中英文分詞及拼音搜索。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

Elasticsearch實戰(zhàn)-中英文分詞及拼音搜素

1.ElasticSearch 中英文分詞插件

基于文章 Elasticsearch實戰(zhàn)(一)—安裝及基本語法使用 前面的文章,我們已經(jīng)基本使用了ES,而且也講了 match 和 match_phrase的區(qū)別,今天講一下如何分詞

1.1 分詞插件
# 我是用了 IK分詞
IK分詞器 :elasticsearch-analysis-ik-7.10.0
拼音分詞: elasticsearch-analysis-pinyin-7.10.0 

在官網(wǎng)上都可以下載 IK分詞地址

如果GitHub下載太慢的,可以用這個鏈接下載
鏈接:https://pan.baidu.com/s/1spLBdCDCPtZ1sa_EXNkU5g?pwd=mhtn
提取碼:mhtn

解壓到 es/plugins 插件文件夾下,
重啟ES

1.2 默認分詞
#  執(zhí)行

POST /jzjik/_analyze
{
  "text":"湖北省武漢市光谷大道"
}

查看現(xiàn)在默認 插入數(shù)據(jù) 的分詞設(shè)置 可以看到 現(xiàn)在是 一個字,一個字 拆開去分詞的
elasticsearch配置分詞中英文,ElasticSearch,elasticsearch,搜索引擎,ES 拼音搜索,ES ik分詞設(shè)置,ES ik分詞查詢
這就是 為什么我們?nèi)ゲ樵?單個字也能夠查詢成功的原因

1.3 IK分詞-ik_smart

IK分詞器 有兩種分詞模式

  • ik_smart 粗粒度分詞
  • ik_max_word 細粒度分詞
#  指定 ik_smart 粗粒度分詞
POST /jzjik/_analyze
{
  "text":"湖北省武漢市光谷大道",
  "tokenizer": "ik_smart"
}

看下分詞結(jié)果, 分解成了 湖北省, 武漢市 , 光谷, 大道
elasticsearch配置分詞中英文,ElasticSearch,elasticsearch,搜索引擎,ES 拼音搜索,ES ik分詞設(shè)置,ES ik分詞查詢
可以按照常用習慣,進行粗粒度分詞

1.4 IK分詞-ik_max_word

IK分詞器 有兩種分詞模式

  • ik_smart 粗粒度分詞
  • ik_max_word 細粒度分詞
# 細粒度分詞 就是最大力度的分詞,但是不是 單個字單個字的分詞

POST /jzjik/_analyze
{
  "text":"湖北省武漢市光谷大道",
  "tokenizer": "ik_max_word"
}

可以看到分詞結(jié)果 分別拆分成了 湖北省, 湖北, 省, 武漢市, 武漢, 市,光谷, 大道
elasticsearch配置分詞中英文,ElasticSearch,elasticsearch,搜索引擎,ES 拼音搜索,ES ik分詞設(shè)置,ES ik分詞查詢

1.5 拼音分詞

我們經(jīng)常見到 張三 名字輸入 zhang 就可以出來 張三 這種情況,其實就是對姓名進行 拼音分詞

先創(chuàng)建一個自定義的 拼音分詞器

# 可以看到自定義了兩個 拼音分詞 ik_smart_pinyin 及 ik_max_word_pinyin
#底層用的 tokenizer 就是 粗粒度及細粒度分詞
PUT /iktest/ 
{

   "settings": {
        "analysis": {
            "analyzer": {
                "ik_smart_pinyin": {
                    "type": "custom",
                    "tokenizer": "ik_smart",
                    "filter": ["my_pinyin", "word_delimiter"]
                },
                "ik_max_word_pinyin": {
                    "type": "custom",
                    "tokenizer": "ik_max_word",
                    "filter": ["my_pinyin", "word_delimiter"]
                }
            },
            "filter": {
                "my_pinyin": {
                    "type" : "pinyin",
                    "keep_separate_first_letter" : true,
                    "keep_full_pinyin" : true,
                    "keep_original" : true,
                    "limit_first_letter_length" : 16,
                    "lowercase" : true,
                    "remove_duplicated_term" : true
                }
            }
        }
  }
}

后面設(shè)置的 這些 到底有什么意思?

屬性名字 說明
keep_first_letter true: 將所有漢字的拼音首字母拼接到一起:劉德華 -> ldh
keep_full_pinyin true:在最終的分詞結(jié)果中,會出現(xiàn)每個漢字的全拼:劉德華 -> liu , de, hua
keep_none_chinese true: 是否保留非中文本,例如 java程序員, 在最終的分詞結(jié)果單獨出現(xiàn) java
keep_separate_first_lett true: 在最終的分詞結(jié)果單獨將每個漢字的首字母作為一個結(jié)果:劉德華 -> l, d, h
keep_joined_full_pinyin true:在最終的分詞結(jié)果中將所有漢字的拼音放到一起:劉德華 -> liudehua
keep_none_chinese_in_joined_full_pinyin true:將非中文內(nèi)容文字和中文漢字拼音拼到一起
none_chinese_pinyin_tokenize true: 會將非中文按照可能的拼音進行拆分
keep_original true: 保留原始的輸入
remove_duplicated_term true: 移除重復

然后 插入文本 測試下 ,拼音分詞是否生效

GET /iktest/_analyze
{
  "text":"湖北省武漢市光谷大道",
  //指定 字段使用 拼音分詞
  "analyzer": "ik_smart_pinyin"
}

查詢結(jié)果,可以看到已經(jīng)生效 ,拼音分別是 h,hu,b,bei,hbs 等 拼音及縮寫生成分詞效果
elasticsearch配置分詞中英文,ElasticSearch,elasticsearch,搜索引擎,ES 拼音搜索,ES ik分詞設(shè)置,ES ik分詞查詢

1.6 拼音分詞 查詢

設(shè)置 索引Mapping 把剛才定制的 拼音分詞 用于數(shù)據(jù)字段上

# 給 iktest 索引 設(shè)置mapping, name 字段 設(shè)置 ik_smart_pinyin 拼音分詞
PUT /iktest/_mapping
{
        "properties": {
            "name": {
                "type": "keyword",
                "fields": {
                    "pinyin": {
                        "type": "text",
                        "analyzer": "ik_smart_pinyin",
                        "boost": 10
                    }
                }
            }
        }
}


# 插入一條數(shù)據(jù) 到iktest id=1
put /iktest/_doc/1
{
  "name":"馬云"
}

# 插入一條數(shù)據(jù) 到iktest id=2
put /iktest/_doc/2
{
  "name":"劉德華"
}

然后用拼音 查詢 試一試
m 查詢 馬云
elasticsearch配置分詞中英文,ElasticSearch,elasticsearch,搜索引擎,ES 拼音搜索,ES ik分詞設(shè)置,ES ik分詞查詢

ld 或者 ldh, 查詢 劉德華
elasticsearch配置分詞中英文,ElasticSearch,elasticsearch,搜索引擎,ES 拼音搜索,ES ik分詞設(shè)置,ES ik分詞查詢


至此 我們分詞,包括拼音分詞 已經(jīng)處理完畢, 下一篇 我們介紹 Springboot 結(jié)合 es 進行數(shù)據(jù)處理文章來源地址http://www.zghlxwxcb.cn/news/detail-627931.html

到了這里,關(guān)于Elasticsearch實戰(zhàn)(四)---中英文分詞及拼音搜索的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務器費用

相關(guān)文章

  • Qt 動態(tài)中英文切換

    ? ? ? ? 需要界面實現(xiàn)動態(tài)國際化,一鍵點擊切換中英文或其他語言。 ? ? ? ? 已經(jīng)完成了整個界面的翻譯,拿到匹配的ts翻譯文件,注意:要保證界面切換后,翻譯的全覆蓋,要保證任何需要反應的地方,都用到了tr(\\\"\\\")包含,不然Linguist會捕捉不到。.ts文件的生成參考下文

    2024年02月10日
    瀏覽(100)
  • ElasticSearch - 基于 拼音分詞器 和 IK分詞器 模擬實現(xiàn)“百度”搜索框自動補全功能

    ElasticSearch - 基于 拼音分詞器 和 IK分詞器 模擬實現(xiàn)“百度”搜索框自動補全功能

    目錄 一、自動補全 1.1、效果說明 1.2、安裝拼音分詞器 1.3、自定義分詞器 1.3.1、為什么要自定義分詞器 1.3.2、分詞器的構(gòu)成 1.3.3、自定義分詞器 1.3.4、面臨的問題和解決辦法 問題 解決方案 1.4、completion suggester 查詢 1.4.1、基本概念和語法 1.4.2、示例 1.4.3、示例(黑馬旅游)

    2024年02月07日
    瀏覽(31)
  • 面試算法十問2(中英文)

    算法題 1: 數(shù)組和字符串 Q: How would you find the first non-repeating character in a string? 問:你如何找到字符串中的第一個不重復字符? Explanation: Use a hash table to store the count of each character, then iterate through the string to find the first character with a count of one. 解釋: 使用哈希表存儲每個字符的計

    2024年04月25日
    瀏覽(100)
  • 汽車研發(fā)與制造中英文對照

    FPDS(Ford Product Development System)福特產(chǎn)品開發(fā)系統(tǒng) threetype chassis 三類底盤 inter-citybus 長途客車 PassengerVehicle 乘用車 MPV(Multi-PurposeVehicle)多用途汽車 SUV(Sports Utility Vehicle) 運動型多用途車 four-wheeldrive 四輪驅(qū)動 front-wheeldrive 前輪驅(qū)動 DFA-Design For Assembly 面向裝配的設(shè)計 toolb

    2024年02月21日
    瀏覽(91)
  • 網(wǎng)絡安全中英文術(shù)語大全

    01享級持久感動(APT) 一種阿絡攻擊。使用復雜的技術(shù)持續(xù)對目標 政府和公司進行網(wǎng)絡間諜活造或其他咨意活 動。遺常由具有豐富專業(yè)知識和大量安滲的 對手進行-通營與民族國家參與者相關(guān)。 這些攻擊往往來自多個入口點,并且可能使 用多個攻擊媒介 《例運,同絡攻擊,

    2024年02月05日
    瀏覽(98)
  • 英文視頻自動生成中英文字幕+pr導入并添加字幕

    英文視頻自動生成中英文字幕+pr導入并添加字幕

    吶,這里要給大家推薦一個特別強大的工具,那就是 網(wǎng)易見外 ,這是一個AI智能語音轉(zhuǎn)寫聽翻平臺。 我這里主要用到了視頻智能字幕功能。整體感覺在國內(nèi)應該算比較挺強大的,可能也是因為沒有用過別的,歡迎小伙伴們推薦別的。嘿嘿! 需要注意的是,有時候生成的字幕

    2024年02月12日
    瀏覽(100)
  • pycharm界面中英文版本切換方法

    pycharm界面中英文版本切換方法

    前言 新手報到,記錄問題 pycharm還是喜歡英文版界面,那么如何實現(xiàn)中英文切換? 一、按下快捷鍵:CTRL+ALT+S,打開pycharm設(shè)置窗口 二、點擊 Plugins ,選擇 MarketPlace 文本框,輸入 Chinese ,找到自己安裝的中文插件 三、點擊 Disable 或 Enable ,就可以禁用或啟用插件實現(xiàn)中英文切

    2024年02月22日
    瀏覽(97)
  • ChatGPT本地部署(支持中英文,超級好用)!

    ChatGPT本地部署(支持中英文,超級好用)!

    今天用了一個超級好用的Chatgpt模型——ChatGLM,可以很方便的本地部署,而且效果嘎嘎好,經(jīng)測試,效果基本可以平替內(nèi)測版的文心一言。 目錄 一、什么是ChatGLM? 二、本地部署 2.1?模型下載 2.2?模型部署 2.3?模型運行 2.3.1?直接在命令行中輸入進行問答 2.3.2?利用?gradio?庫

    2023年04月14日
    瀏覽(34)
  • Android開發(fā)-應用中英文(語言)切換(二)

    Android開發(fā)-應用中英文(語言)切換(二)

    ? ? ? ? APP中針對不同國家不同地區(qū)的人群使用那么應用的語言自然也要能夠隨時進行切換,最近做的項目有中文和英文切換的需求,所以在了解了一下網(wǎng)上常用的方法后記錄一下我使用的方法,只是簡單的應用,后續(xù)如果有不同需求需要自己去改。? ? ? ? ? ?新建工程就

    2024年02月09日
    瀏覽(99)
  • PYTHON實現(xiàn)AES加密,中英文通用!??!

    AES是一種對稱加密,所謂對稱加密就是加密與解密使用的秘鑰是一個。在日常的開發(fā)中,無論是實現(xiàn)前后端的接口數(shù)據(jù)加密,還是數(shù)據(jù)傳輸安全性,都使用了AES加密,本文章將從python的角度去實現(xiàn)AES的加密和解密 AES的加密方式有很多種,例如ECB、CBC、CTR、OFB、CFB,最常用的是

    2024年02月12日
    瀏覽(92)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包