正则检索 regexp query

返回包含与正则表达式匹配的术语的文档 

正则表达式是一种使用占位符(称为运算符)匹配数据中的模式的方法。有关regexp查询支持的运算符的列表 ,请参见正则表达式语法

curl -X GET "localhost:9200/_search?pretty" -H 'Content-Type: application/json' -d'
{
  "query": {
    "regexp": {
      "user.id": {
        "value": "k.*y",
        "flags": "ALL",
        "case_insensitive": true,
        "max_determinized_states": 10000,
        "rewrite": "constant_score"
      }
    }
  }
}
'

注意: regexp (正则表达式)查询的性能很大程度上取决于所选的正则表达式。匹配一切像 “.*” ,是非常慢的,使用回顾正则表达式也是如此。如果可能,您应该尝试在正则表达式开始之前使用长前缀。通配符匹配器“.*?+” 将主要降低性能。

value:

(必需,字符串)您希望在提供的中找到的术语的正则表达式 <field>.

flags:

(可选,字符串)为正则表达式启用可选运算符

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