es 中文前缀短语匹配(搜索智能补全)

需求 :es进行前缀匹配,用来进行智能补全
过程 :es正常的prefix只能进行词语匹配,而中文的分词大部分按字分词,不按语义分词,所以无法搜索出正确的前缀匹配,而能进行短语匹配的match_phrase_prefix匹配,是正常按前几个词进行匹配,最后一个词进行前缀匹配,也不满足要求。查阅很多资料发现,离正确答案只差一个keyword
代码

java 复制代码
curl -X POST "localhost:9200/information_completion/_search?pretty" -H 'Content-Type:application/json' -d '{
  "_source": ["text"],
  "text": {
    "prefix": {
      "text.keyword": "中云街"
    }
  }
}
'

参考资料

相关推荐
Jesse_EC12 小时前
为什么我设置的 contentLength 到了消费端变成了 0?
java
vipxieliang12 小时前
ValidX 的 Date 和 DateTime vs JPA 的 Temporal 对比
java·后端
杜touch12 小时前
Spring框架的AnnotationConfigApplicationContext类启动的流程
java
AI人工智能+电脑小能手13 小时前
大白话说Java设计模式-26-策略模式(业务实战篇)
java·spring·设计模式·策略模式·支付系统·算法切换
不是光头 强13 小时前
Java 后端 AI 技术选型与学习路线
java·人工智能·学习
paopaokaka_luck14 小时前
基于springboot3+vue3的文山民族文化资源展示与推广平台(协同过滤算法、Echarts 图形化分析)
java·前端·spring boot·学习·echarts
eralong14 小时前
Java IO 与 NIO
java·后端
Jesse_EC14 小时前
我给消息推送加了 Publisher Confirm,然后亲手引入了一个竞态
java
S3rein14 小时前
JAVA多线程手撕
java·多线程
用户81818706274615 小时前
第7章 死锁排查实录:jstack定位死锁的完整流程
java·后端