在grok调试器中删除空格时,正则表达式失败

时间:2015-06-16 20:55:01

标签: regex logstash-grok

我正在尝试从日志文件条目中提取日期:

 ......
 Date is:2015-06-09
 ........

使用grok调试器进行logstash。

我使用的正则表达式是(?<=Date is:)[0-9\-]*\s? 这个正则表达式适用于regex101,但在grok调试器中没有任何匹配。

有趣的是,如果我在正则表达式和文件条目中的:之后添加一个空格,那么grok调试器会给出正确的结果。

1 个答案:

答案 0 :(得分:0)

你可以尝试:

((?<=Date is:)[\d\-]+\s?)|((?<=Date is: )[\d\-]+\s?)

首先我添加了+而不是*,因为至少有一个日期。正则表达式检查日期的一方是:冒号后面没有空格,另一边在冒号之后有一个空格,然后是日期。