我想在splunk中提取一个字段,但是Splunk Regex不起作用所以我正在编写自己的正则表达式。但是我很难提取。有人可以帮忙吗?
我的字符串:
Node ID=nbgcXYZdfdscxm2
Node ID=NBGDFDFCCXM2
Node ID=BURECXM2
预期产出:
cXYZdfds
DFDFC
BURE
到目前为止,我能够写出来
.*(?i)Node ID=[^nbg](?P<CM_Node_Id>[^\]cxm\d]+)
答案 0 :(得分:0)
^Node ID=(?:nbg)?(.*?)(?:cxm\d)?$
Node ID=nbgcXYZdfdscxm2
Node ID=NBGDFDFCCXM2
Node ID=BURECXM2
cXYZdfds
DFDFC
BURE
^
在行首处断言位置Node ID=
按字面意思匹配此字符序列(?:nbg)?
字面上nbg
的可选匹配(.*?)
任意次数捕获任何角色,但尽可能少捕获到捕获组1 (?:cxm\d)?
字面上cxm
的可选匹配,后跟数字$
断言行尾的位置