正则表达式模式匹配失败

时间:2019-07-06 23:26:05

标签: regex kibana logstash-grok grok

我无法匹配Logstash grok中的模式。这是我的数据:

some words key[value]some words in between key[value] key[value]....some more words

我要匹配模式

key[value] key[value]

即两个连续的键值之间,

我尝试使用(?=\w+[.*])\s(?=\w+[.*]),但是它不起作用。

我正在使用第一个键[value]来获得整行,而不是从key [value] key [value]中获得。

2 个答案:

答案 0 :(得分:1)

\S+\[[^\[]+\]

表示任何非空格字符后接[,后接除重复重复一次以上并后接[以外的]以外的任何字符

Demo

答案 1 :(得分:0)

我猜想没有必要进行积极的前瞻,并且该表达式可能有效:

[A-Za-z0-9]+\[[A-Za-z0-9]+\]\s[A-Za-z0-9]+\[[A-Za-z0-9]+\]

DEMO 1

或者:

(?<=[^a-z])\s(\S+\[[^]]+\])

DEMO 2