搜索技术-使用coreseek做中文分词时如何将特殊符号(#+/.等)纳入索引?

发布于 2016-11-27 10:44:45 字数 324 浏览 1107 评论 1

在做中文全文检索时我们采用的是coreseek,虽然它是基于sphinx开发的,但是有些sphinx的原生设置不能使用。
比如现在就遇到一个问题,我们需要能搜索到c#、c++等带有特殊字符的词,在sphinx中只需要在配置文件中的charset_table选项里增加这些特殊字符的unicode编码即可。

但在Coreseek中,启用中文分词后,系统会使用MMSeg内置的码表(被硬编码在MMSeg的程序中),因此,charset_table在启用分词后将失效。


请问除了修改其源代码之外,有什么比较好的方式实现这个需求?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

归属感 2017-02-17 09:28:19

coreseek是在sphinx基础上针对中文搜索的二次开发,部分在英文搜索中的设置方法不能直接拿来用。
这里对于特殊字符可以做一个映射关系表,将常用的特殊字符替换为搜索引擎允许查找的字符。
例如:

C# => Csharp
C++ => Cplusplus

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文