关于中文拼音模糊查找

xiangmao 发布于 2012/08/17 11:47
阅读 1K+
收藏 0
我的问题:从数据库中查找“李泽成”,数据库中的拼音字段:lizecheng#li_ze_cheng#lzc
以下方式均能查询到:
    1. 姓名全拼(LiZeCheng)
    2. 相邻字符拼音;(LZeCheng, LiZCheng, LiZeC, LZCheng, LiZC, LZeC, LZe,ZCheng, LiZ, LiZe, ZeC, ZeCheng)(对于单个汉字,全拼或首字母)
    3. 单个字全拼(Li,Ze,Cheng,)
    4. 姓名首字母和相邻两字首字母;(LZC,LZ,ZC)
主要是第二种方式,希望能提供下思路。
加载中
0
陈家铭
陈家铭
存入数据库时,存一个完整,再存一个首字母的
xiangmao
xiangmao
数据库中时这样存的:lizecheng#li_ze_cheng#lzc,但是没有找到一个很好的解决办法。
0
叶落花开
叶落花开

你有没有发现相邻字符拼音;(LZeCheng, LiZCheng, LiZeC, LZCheng, LiZC, LZeC, LZe,ZCheng, LiZ, LiZe, ZeC, ZeCheng)都是包含在完整拼音LiZeCheng里的并且要保证前后顺序一致...

xiangmao
xiangmao
回复 @康敏栋 : 的确如此。
康敏栋
回复 @xiangmao :查找首字母和全拼还好,如果要实现 你说的,我觉得很难,毕竟每次在百度里面也只有首字母和全拼,做的好的那应该是像搜狗这种输入法吧
xiangmao
xiangmao
回复 @康敏栋 : 嗯,对的。像LiCheng这种都不行,也就是说如果是三个字,不能把中间的那个字略去,但是相邻两个字可以如LiZe。此外每个汉字的拼音要么没有,要么有首字母,要么全拼,值能这三种情况。
康敏栋
回复 @叶落花开 : 这样LiZeCg好像不行吧
叶落花开
叶落花开
回复 @xiangmao : 只要LiZe之类的字符串包含在lizecheng里,并且字符顺序一致,就算符合要求吧....
下一页
0
陈家铭
陈家铭
她意思是你存多一点组合形式
陈家铭
陈家铭
他的意思应该是存在同一个字段里,用符号隔开
xiangmao
xiangmao
但是这种组合太多了,如果名字是“爱新觉罗努尔哈赤"这种名字就悲剧了。
返回顶部
顶部