Splunk Regex字段提取

时间:2018-03-12 13:42:00

标签: regex pcre splunk

我想提取字符串的某个部分,例如:

输入

\\host1\teams\team1\bla\bla\bla
\\host1\teams\team2\bla\bla
\\host1\teams\team3\bla
\\host1\teams\team4

输出

team1
team2
team3
team4

我有一个适用于Regex101.com的正则表达式,但是,当我把它带到Splunk时,它会返回此错误Regex: missing terminating ] for character class,我无法做到。

正则表达式是:

(^\\\\host1\\teams\\)(?P<Team>[^\\]+)

示例数据:

"\\host1\teams\team1","abc123","def678"

更新

regex101 example

1 个答案:

答案 0 :(得分:0)

Splunk的rex命令的一个挣扎就是让右翼逃脱。看起来Splunk正在将"[^\\]"解释为"[^\]",因此它认为括号不匹配。尝试使用其他反斜杠或尝试(^\\\\host1\\teams\\)(?P<Team>[\w]+)