通配符模糊检索 wildcard query

匹配与通配符表达式具有匹配字段的文档(not analyzed)。支持的通配符是 “”,它匹配任何字符序列(包括空字符);还有 “?”,它匹配任何单个字符。请注意,此查询可能很慢,因为它需要迭代多个项。为了防止极慢的通配符查询,通配符项不应以通配符 “” 或 “?” 开头。通配符查询对应 Lucene 的 WildcardQuery 

curl -X GET "localhost:9200/_search?pretty" -H 'Content-Type: application/json' -d'
{
  "query": {
    "wildcard": {
      "user.id": {
        "value": "ki*y",
        "boost": 1.0,
        "rewrite": "constant_score"
      }
    }
  }
}
'

value:

(必需,字符串)通配符模式

  • ?,它与任何单个字符匹配
  • *,可以匹配零个或多个字符,包括一个空字符

boost:

(可选,float)用于减少或增加查询相关性分数浮点数 默认为1.0

GET /_search
{
    "query": {
        "wildcard" : { "user" : { "value" : "ki*y", "boost" : 2.0 } }
    }
}

rewrite:

(可选,字符串)用于重写查询的方法。有关有效值和更多信息,请参阅 rewrite参数

posted @ 2021-03-08 13:10  薄荷味日记  阅读(1813)  评论(0编辑  收藏  举报