我正在使用 MySQL 全文和 PHP (codeigniter) 来搜索包含 RSS 项目的数据库。问题是其中一些项目的标题使用下划线而不是空格。由于 MySQL 将下划线视为单词的一部分,因此这些项目在搜索中永远不会匹配,除非用户键入包含下划线的确切标题。
服务器是共享的,所以我无权访问 MySQL 服务器系统变量。
可以通过其他方式改变这种行为吗?
这可以通过搜索查询本身来完成吗?
我知道我可以用空格替换数据库中出现的所有下划线,但这会损害这些标题的原始完整性。只是想知道是否还有另一种方法可以做到这一点。
我知道我可以用空格替换数据库中出现的所有下划线,但这会损害这些标题的原始完整性。只是想知道是否还有另一种方法可以做到这一点。
您可以使用专用于全文搜索的单独字段,而不是替换原始标题字段中的下划线。
这允许您替换下划线,并将关键字聚合到该字段(类别名称、作者、标签等)以增强搜索结果的相关性。
我们多次使用此方法,成功地摆脱了搜索内容推断中的 HTML 标签
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)