通过拼音模糊搜索汉字的功能实现
来源:互联网 发布:淘宝兼职是什么意思 编辑:程序博客网 时间:2024/04/25 07:23
一、原由
前一段时间用php实现通讯录系统,需要用到拼音查找汉字功能,匹配通讯录的姓名字段,于是在网上搜索已有的开源代码,下面总结和分析一下思路和具体实现。
二、思路
查找了网上的多种解决方案,大致分为几类:
1.用javascript实现前端实拼音模糊搜索汉字,核心算法有以下2种:
列举所有字符:
http://www.cnblogs.com/meteoric_cry/p/5954547.html
也有用ASCII字节码字典来实现字符拼音检索:
http://www.jb51.net/article/100864.htm
2.用数据库函数来实现拼音模糊搜索汉字:
SQL Server:
http://blog.csdn.net/lisky119/article/details/8662673
Mysql:
http://www.cnblogs.com/zenghansen/p/4846460.html
3.后端语言逻辑实现拼音模糊搜索汉字:
java:
http://blog.csdn.net/zhangfuning1986/article/details/7738875
c#:
http://blog.csdn.net/lucky51222/article/details/21068235
4.用 excel 提前将汉字转换成拼音:
http://jingyan.baidu.com/article/48b37f8d39a69c1a646488df.html
三、实现
实际实现中,首先基于现场电脑比较老旧,且浏览器都是老版本,在前端用js实现拼音模糊搜索汉字可能会导致用户系统卡顿的问题,否定了方案1 ; 考虑语言和数据库因素,(php实现后台,mysql数据库) 优先考虑2.2 和4 ; 于是用方案4做了测试,发现实际使用当中,基于ASCII码字典实现的拼音检索汉字功能,有多音字查找的问题,写固定在程序逻辑里之后,后期没办法修正; 因此,采用方案4,再进行拼音修正是一个比较好的方法。
于是就按照方案4的教程,使用MS的EXCEL宏编程功能,复制VBA代码,制作数字签名,然后使用函数进行操作。如教程中所说,有部分汉字识别不出来,就只能手动改了,也算是一个折衷的办法。后来还用拼音检索字段来保存英文名,后期拼音由于多音字识别错误的,可以修正,也还不错。
然后就前端提醒用户使用空格分割多个关键字,后台逻辑用 “%” 做字符串拼接,搜索。
- 通过拼音模糊搜索汉字的功能实现
- Android 利用AutoCompleteTextView实现模糊搜索功能,搜索结果自动提示,识别拼音首字母并转汉字提示
- Android 利用AutoCompleteTextView实现模糊搜索功能,搜索结果自动提示,识别拼音首字母并转汉字提示
- Android 实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- Android实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- Android实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- Android实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- Android实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- Android 实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- Android 实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- Android 实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- Android 实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- Android 实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- Android 实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- Android 实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- Android 实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- Android:实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- Android 实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- Collectors
- raw_input() 与 input() __ Python
- 世界互联网大会|AI风口前的“大佬”众生相
- Linux内核调试的方式以及工具集锦
- 解决Nginx 400 Bad Request问题的一些思路
- 通过拼音模糊搜索汉字的功能实现
- 听见丨小米否认明年IPO 雷军曾暗示2025年前不上市
- Jenkins+Maven+Svn实现代码自动打包与发布
- 第二届全国智能制造(中国制造2025)创新创业大赛华东赛区决赛圆满落幕
- 听见丨 锤子明年将有更多智能硬件还有T3
- ros同时接收多话题并发布
- 黑苹果链接分享!
- 对数几率回归-机器学习
- 超级汽车电池充电技术,充电一分钟行驶500英里---凯利讯半导体