Splunk 正则表达式字段提取
Posted
技术标签:
【中文标题】Splunk 正则表达式字段提取【英文标题】:Splunk Regex field extraction 【发布时间】:2018-03-12 13:41:59 【问题描述】:我想提取字符串的某一部分,例如:
输入
\\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】:Splunk 的rex
命令的一个难题是如何正确转义。看起来 Splunk 将"[^\\]"
解释为"[^\]"
,因此它认为括号不匹配。尝试使用额外的反斜杠或尝试(^\\\\host1\\teams\\)(?P<Team>[\w]+)
。
【讨论】:
以上是关于Splunk 正则表达式字段提取的主要内容,如果未能解决你的问题,请参考以下文章