通配符模糊检索 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
参数。