ES 模糊搜索并且高亮

2020-01-18 00:36:14 +08:00
 lau52y

想模糊搜索,并且高亮。

有一段如下文本:"使用自定义撒打算大苏打大的分词器,如下通过 llo 可以查询到 hello 中国 233 的记录。特斯拉汽车到底突破 500 美元没有"

比如:搜索"特斯拉",能命中,并且"特斯拉"高亮

搜索"特斯拉汽车",就"特斯拉汽车"高亮

有点像 sql 里面的 like '%特斯拉%'(暂时不考虑性能,当然效率高也是可以的)

目前遇到的问题:因为参考的一篇文章,所以搜索没有遇到什么问题,但是高亮有点不对

PS:文章中:通过字符过滤器,将字符串的每一个字符间添加一个空格,再使用空格分词器将字符串拆分成字符

想问下这种怎么弄

3720 次点击
所在节点    Elasticsearch
5 条回复
lau52y
2020-01-18 00:36:51 +08:00
Outshine
2020-01-18 13:33:57 +08:00
`search_analyzer` 用 `ik_smart` 就吼了
encro
2020-01-18 14:43:34 +08:00
词库没有用上,你用的是分字不是分词吧,或者特斯拉没有在词库。
高亮可以采用前端来处理更加灵活,但是需要考虑多个词组情况,比如搜索“特斯拉汽车”,而原文为“特斯拉是电动汽车的标杆”,这时候需要高亮特斯拉和汽车。
encro
2020-01-18 14:46:16 +08:00
https://www.jianshu.com/p/914f102bc174
Elasticsearch 搜索中文分词优化
lau52y
2020-01-18 20:03:47 +08:00
@Outshine @encro 感谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/638888

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX