首页 > 解决方案 > 如何使用在 Splunk 中使用的正则表达式根据需要突出显示文本?

问题描述

我有以下正则表达式,它显示以下输出: 在此处输入图像描述 所需的绿色文本。但是当添加到 Splunk 时,显示与以前的正则表达式完全相同的输出。

我想要的是使精确突出显示的绿色文本在 Splunk 中突出显示以进行字段提取。

以前的正则表达式: 在此处输入图像描述 突出显示的绿色文本未对齐。

我怀疑我必须将“< 37 > 1”也以蓝色突出显示,这样 Splunk 才能正确提取绿色文本。由于当我在 Splunk 中询问时,此正则表达式是由另一个用户完成的,所以当我将其添加到 Splunk 时,该用户没有在他的示例正则表达式中添加“< 37 > 1”,这会影响对齐。我尝试了不同的变体来突出显示“< 37 > 1”,但无济于事。

我的变体的一些例子:

(?:[^\s][^\s][^\s]+\s+){2}(?P[^\s]+(?:\s\w+)?)\s\d+\s+ <

(?:[^\s][^\s]+\s+){2}(?P[^\s]+(?:\s\w+\s)?)\s\d+\s+<

(?:[^\s][^\s]+\s+){2}(?P[^\s]+(?:\s\w+\w)?)\s\d+\s+<

(?:[^\s][^\s]+\s+){2}(?P[^\s]+(?:\s\w+\w\w)?)\s\d+\s+<

\<(?:[^\s][^\s]+\s+){2}(?P[^\s]+(?:\s\w+)?)\s\d+\s+<

(?:[^\s][^\s]+\s+\s){2}(?P[^\s]+(?:\s\w+)?)\s\d+\s+<

正则表达式链接: https ://regex101.com/r/biHi9a/5

标签: splunk

解决方案


您知道 Splunk 在解析文本时不使用颜色,对吧?如果我正确理解您的问题和示例,您想提取“E876876876”和第一个数字之间的文本。假设“E876876876”不是固定字符串,这个正则表达式应该提取“auth”和“SECURE AUDIT”。

":\d\dZ\s\w+\s(?P<field1>[^\d]+)"

推荐阅读