首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    ElasticSearch实战系列02:中文+拼音混合检索,并高亮显示

    本文导读 本文仿照QQ的用户搜索,搭建一个中文+拼音的混合检索系统,并高亮显示检索字段。...【ps:留言区附完整版项目源码地址】 01 项目简介 本项目基于ElasticSearch 7.7.1,analysis-pinyin 7.7.1,参考QQ的用户搜索效果,完成一个中文+拼音的混合检索系统...中文+首字母+全拼检索 其实QQ的用户检索是有很多限制的,比如说首字母检索时,必须从第一个字开始匹配【输入“gz”,可以检索到“关注我”,但是不能检索到“我关注”】; 再比如说全拼+首字母检索时,全拼必须在前面...【输入“guanz”,可以检索到“关注我”,但是输入“gzhu”,是不能检索到结果的】; 至于为什么会有如此限制,个人猜测是考虑检索性能(PS:欢迎留言讨论)。...1.2 检索需求描述 参考QQ,列出“用户检索系统”的需求如下: 1)支持首字母检索; 2)支持首字母+全拼检索; 3)支持中文+首字母+全拼混合检索; 4)检索词有中文,则必须包含; 5)高亮显示检索命中词

    4.4K20

    Golang 中文转拼音

    翻遍整个 GitHub , Golang 中文转拼音类库, 怎么就这么难找呢? 于是我造了一个轮子: 中文转拼音类库. 目前来说应该是最好用的了....GitHub 传送门: https://github.com/Lofanmi/pinyin-golang 如果说基于汉字拼音字典, 逐个汉字替换, 也是可以转换的, 但是碰到多音字就很麻烦了....`).Unicode() fmt.Println(s) // ---- // 转换接口: Dict.Convert // ---- // 输入繁体中文, 输出为带 空格 分隔的拼音字符串...`).ASCII() fmt.Println(s) // 输入简体中文, 输出为带 空格 分隔的拼音字符串 // Unicode 格式显示 // wǒ, hé shí néng bào fù?...`).Unicode() fmt.Println(s) // 转换简体中文和繁体中文, 转换为带 空格 分隔的拼音字符串 // 不显示声调 // wo, he shi neng bao fu?

    29120

    将QQ拼音词库导入到搜狗拼音

    我以前用的是搜狗拼音,但是有一次我的词库数据莫名其妙的丢失后,而且发现搜狗拼音的词库不能导出为纯文本,所以我就放弃搜狗使用QQ拼音了。...昨天看到搜狗拼音推出了云输入法,真是让我眼前一亮,真是很有创意的一个输入法,就因为搜狗推出了该输入法,因为他们的创意,所以我决定回到搜狗拼音。...要回归搜狗拼音输入法,那么词库问题是一个很严重的问题,默认情况下,QQ拼音输入法的词库是没办法导入到搜狗拼音输入法中的,直接将QQ拼音输入法词库导出,再在搜狗拼音输入法中导入时提示如下: 所以我不得不写一个小程序...,将QQ拼音的词库格式转换一下,然后再进行导入。...分析了一下QQ拼音词库的格式和搜狗拼音词库格式,区别在于: QQ拼音词库中提供了词频数,而搜狗词库没有。 QQ拼音拼音前面是没有单引号的,但是搜狗词库必须要有。

    2.6K30
    领券