弹性搜索在您键入时使用搜索进行部分搜索

时间:2017-05-20 00:36:34

标签: elasticsearch

我有一个名为title的字段的文档,其中包含"戒指的领主""戒指的领主","戒指"等等 我想在输入功能时进行搜索。 因此,如果用户键入" th",结果的顺序应为 - "戒指的领主", "戒指", "戒指之王" 因为我想要以" th"开头的字符串。首先出现并按字母顺序排列。 我试着查看edgengrams,但这对字符串中的每个单词都有效。 我想只从字符串的开头做。

您能否告诉我为实现这一目标需要使用哪些分析仪?

由于

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

您可以尝试Match Phrase Prefix查询:

{
"query": {
    "match_phrase_prefix": {
       "text": "the"
     }
  }
}

希望这有帮助