使用 sphinx 搜索时可以识别匹配的术语吗?
我正在使用 sphinx 通过 Think sphinx 对 mysql 数据库进行全文搜索。
我想在向用户显示的结果中突出显示匹配的术语。
Shpinx 足够聪明,搜索“肉毒杆菌中毒”将匹配“我喜欢将肉毒杆菌注射到我的眼睛中”
我怎样才能让它告诉我“肉毒杆菌中毒”与“肉毒杆菌中毒”匹配?
I am using sphinx to do full text search on a mysql database through thinking sphinx.
I would like to highlight the matched terms in the results I show to the user.
Shpinx is smart enough that searching for 'botulism' will match "i like to inject botulinum into my eyes"
How can I get it to tell me that 'botulinum' matches 'botulism'?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
第一的,
我在我的一个项目中大量使用 sphinx,但我没有使用 ThinkingSphinx,因为我们使用的配置文件非常复杂,我使用的是自定义的 act_as_sphinx 插件。
从纯sphinx的角度回答您的问题:
sphinx中有一个BuildExcerpts api,用于获取带有匹配下划线的内容摘录,请参阅http://www.sphinxsearch.com/docs/current.html#api-func-buildexcerpts。
认为 Sphinx 应该提供此功能
为了将肉毒杆菌与肉毒杆菌相匹配,您应该使用词干分析器编译 sphinx,也许波特算法可以回答您的问题:请参阅http://www.sphinxsearch.com/docs/current.html#conf-morphology
希望这会有所帮助,我强烈建议您查看 sphinx 文档以充分使用这个非常高效的索引器
Manfred
First,
I'm heavily using sphinx for one of my project but I'm not using ThinkingSphinx since the config file we use is quite complex, I'm using a customized act_as_sphinx plugin.
To answer your question from pure sphinx point of view :
there is an a BuildExcerpts api in sphinx to get excerpt of a content with matching underlined see http://www.sphinxsearch.com/docs/current.html#api-func-buildexcerpts.
Thinking Sphinx should provide this functionnality
to match botulism as botulinum you should compile sphinx with stemmer, maybe the porter algorithm may answer your question : see http://www.sphinxsearch.com/docs/current.html#conf-morphology
Hope this helps and I highly encourage you to look at the sphinx documentation to fully use this very efficient indexer
Manfred