弹性搜索脚本正则表达式聚合

Elastic Search Script Regex Aggregation

我想知道如何在脚本中使用正则表达式。示例:

"aggs": {
   "inventary": {
      "sum": {
         "script": "(doc['action'].value == /^request/) ? 1 : 0"
      }
   }
}

所以我想匹配每个 action 匹配 request*

有可能吗?

谢谢

是的,您只需要使用 ==~ 而不是 ==

"aggs": {
   "inventary": {
      "sum": {
         "script": "(doc.action.value ==~ /^request/) ? 1 : 0"
      }
   }
}