在系统当中,我需要搜索如“开心”关键字,我首先找到与开心相关的关键字比如:“愉快”、“快乐”、“微笑”、“陶醉”等等,对开心关键字进行扩充。
然后使用sphinx搜索的时候 ,用这些关键字来搜索(或的关系):
“开心” -》“快乐” -》“愉快”-》“微笑”-》“陶醉” 等等
最后排序的时候,需要按照上面的关键字顺序来显示结果。
请问这种搜索排序方式用sphinx能做到吗?如果可以,要怎么做呢?
搜索 sphinx 搜索引擎
使用SPH_MATCH_BOOLEAN模式 $sphinx->SetMatchMode(SPH_MATCH_BOOLEAN); $sphinx->query('开心 | 快乐 | 愉快 | 微笑 | 陶醉', '*');
排序的话可以使用 $sphinx->SetIndexWeights(array('开心'=>4096,'快乐'=>512, '愉快'=>64, '微笑'=>8, '愉快'=>1));
如何定制一款适合自己的搜索引擎?
sphinx搜索结果同一个用户发布的信息太多如何打散?
关于sphinx的匹配(中文和英文)
sphinx 的 updateAttributes 方法
sphinx 关键词中包含‘$$’时,搜索报错
在Ubuntu中如何在任意地方使用右键谷歌搜索(跟复制粘贴一样)?