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



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

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

将 grok 调试器用于 logstash。

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

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

你可以试试:

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

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

最新更新