我想知道是否有人可以帮助我。
首先,我对这个看似简单的问题表示歉意,但我真的很难解决这个问题。
我正在尝试从 Splunk 中的原始数据中提取 nino 字段,其格式如下
"nino\":\"AB123456A\"
。
今天早上我读了很多教程,但我仍然找不到“Rex”的表达方式。我只是想知道是否有人能够提供一些关于“Rex”表达方式的指导。
rex
搜索命令 是正则表达式(也称为 regex 或 regexp)的缩写。
您可以执行类似于以下查询的操作,该查询查看原始偶数并尝试解析出
nino
的值:
index=foo | rex field=_raw "^\"\\w+\\\\\":\\\\\"(?P<nino>[^\\\\]+)"
如果您想真正确定该字段已提取,请附加
| table nino
,您可以在表中轻松验证
index=foo | rex field=_raw "^\"\\w+\\\\\":\\\\\"(?P<nino>[^\\\\]+)" | table nino
我使用字段提取器生成了正则表达式,这非常直观。您可能想要自己进行字段提取,因为您的数据与您添加的示例不完全相同。理想情况下,您只需要使用字段提取来定义源类型,这样您就不需要使用
rex
搜索命令。