Kibana自定义过滤器,如何创建正则表达式以消除所有带有数值的项

时间:2019-10-18 09:58:47

标签: regex kibana

我有一个基于自由文本搜索或代码的请求列表。 我想消除类似代码的请求,而只保留自然语言的请求。 因此,我需要一个可以将这些术语分开的查询。

下面是我已经尝试过的query-json


{
  "query": {
    "regexp": {
      "q": "[^\d\W]"}
  }
}
}

我收到的错误是以下行“ q”的“ Bad String”:“ [^ \ d \ W]”} 期望将改进正则表达式以便能够保留相关数据

1 个答案:

答案 0 :(得分:1)

您可以使用

"regexp": {
      "q": "[^0-9]+"}
} 

在Kibana中使用的Lucene regex引擎默认情况下会锚定所有模式,因此[^0-9]+将匹配任何字符串,从头到尾只有数字以外的其他字符。

此外,也不支持\d\W以及其他速记字符类。