我正在使用MyISAM全文搜索。表列使用字符集"utf8“和"utf8_general_ci”作为排序规则。
现在我想实现#HashTag系统,这样当我搜索"#HashTag“时,只显示包含"#HashTag”的行。而不是只包含"HashTag“的行。
根据this MySQL documentation中的注释,对于非多字节字符集,也就是固定宽度编码的字符集,很容易做到这一点。
但是我找不到一个好的参考资料来说明如何在utf8字符集上做到这一点。有没有人对utf8字符集列这样做过?如果是,你能列出确切的步骤吗?
另外,如果可能的话,我想避免重新编译MySQL。
发布于 2010-08-13 17:30:25
这不是您的问题的答案,但是在输入时使用正则表达式解析出哈希标记,并将它们存储在单独的列中不是一个好主意吗?这可能比让mySQL接受#作为搜索字符更容易(也更快)。
https://stackoverflow.com/questions/3475540
复制相似问题