Elasticsearch - 从过滤器开始?

Luc*_* N. 4 elasticsearch

我试图在 Elasticsearch 中获得一个简单的开始功能。例如,我希望查询“char”与“charlotte”匹配,但我不希望它与“dacharlotte”匹配。使用 edgeNgram 过滤器给了我后一个结果。我只希望它匹配以查询词开头的结果,而不仅仅是将它们包含在其中。

Dan*_*ery 5

做你想做的最简单的方法是使用前缀查询:

{
    "query": {
         "prefix":{ "name" : "char" }
     }
}
Run Code Online (Sandbox Code Playgroud)

http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-prefix-query.html