日期:2014-05-20  浏览次数:21127 次

数据库模糊搜索算法
很简单的 困扰了我很久
比如输入关键字"武汉人民政府"
搜索结果中可以出来
"武汉市人民政府"
"武汉江汉区人民政府"
"武汉市洪山区人民政府"

如果输入关键字"武汉市人民政府"
搜索结果中可以出来
"武汉人民政府"
"武汉市江汉区人民政府"

也就是说只要
我的数据库字段里的值包含关键字 或者 关键字 包含我的数据库字段 
结果都可以出来 
麻烦哪位知道说一下 谢谢 


------解决方案--------------------
这个需要你写程序去搜了。
比如说关键字"武汉人民政府",其中包含了地区"武汉",你要把它揪出来(从地址索引(表)里匹配出来),然后就分成了两个词"武汉"和"人民政府",再去匹配..
关键字"武汉市人民政府",同上,其中包含了地区"武汉市",而你的索引表中只有"武汉",那么你匹配的时候就要索引表中加上我们对地区的各种可能称呼来区配,如加上"市","区","县"等,最后分解为两个词"武汉"和"人民政府"

------解决方案--------------------
1
武汉人民政府:把输入的关键字拆分开,从相应的索引表匹配