sphinx 如何实现对拼音的搜索啊

撸红薯 发布于 2013/04/22 15:14
阅读 1K+
收藏 1

sphinx 如何实现对拼音的搜索啊。这个有人了解么。

比如要搜索中国,zhongguo zhong zg zhongg 都可以搜索的到

加载中
0
飞晏
飞晏

表里面建1个pinyin字段  把中国这个词的的拼音建一个简单索引录进去,全拼、首字母等。然后sphinx建索引的时候把这个字段索引上即可。

0
撸红薯
撸红薯

引用来自“飞晏”的答案

表里面建1个pinyin字段  把中国这个词的的拼音建一个简单索引录进去,全拼、首字母等。然后sphinx建索引的时候把这个字段索引上即可。

那拼音的组合也太多了吧
飞晏
飞晏
如果你只是词汇不是句子的话这数据量不值一提。如果你的字段是长字符串,转为拼音没问题,但是使用zg或者zguo这样的检索可能就够呛了。 还有一种办法是你可以根据拼音先转为汉字,当然这个要比先转拼音复杂的多...
0
撸红薯
撸红薯

引用来自“breakerror”的答案

引用来自“飞晏”的答案

表里面建1个pinyin字段  把中国这个词的的拼音建一个简单索引录进去,全拼、首字母等。然后sphinx建索引的时候把这个字段索引上即可。

那拼音的组合也太多了吧
我差不多每项10个字左右  10w项。那这个也很多啊
0
撸红薯
撸红薯

引用来自“breakerror”的答案

引用来自“飞晏”的答案

表里面建1个pinyin字段  把中国这个词的的拼音建一个简单索引录进去,全拼、首字母等。然后sphinx建索引的时候把这个字段索引上即可。

那拼音的组合也太多了吧
10个字穷尽也很多啊
0
江边望海
江边望海
上面的都理解错了。你首先要理解sphinx是什么?它是一个搜索引擎。它有它的专长不是万能的。所以,识别汉字或者拼音并不是sphinx的强项。你可以关键词去查sphinx之前对关键词进行转化即可。比如,用户搜索的是“zhongguo”你可以通过脚本将“zhongguo”转化成“中国”,不管是全拼还是简拼去sphinx检索的时候都是使用的汉字即可。毕竟你提供的是中文搜索,索引中的结果飞汉字的肯定是少数的。
返回顶部
顶部