例如,我需要分解的日志是这样的
“ 01234567895467894ACCP 844” 哪里 0123456789是电话号码, 5467894授权编号, ACCP是授权的类型,但是例如可以是6个长,因此之后可以有2个空格。 844个其他号码。我需要做的是根据字符数分隔行。它将始终保持不变。
所以像%{CHAR 0-10:Phonenumber)%{CHAR 11-18:Mandate}%{CHAR 19-24:Type}
之类的东西是否可以使用怪人来完成?我尝试寻找,但没有找到类似的东西。
答案 0 :(得分:3)
以下regular expression based grok expression可让您捕获期望的内容:
(?<Phonenumber>\d{10})(?<Mandate>\d{7})(?<Type>[A-Z\s]{4,})(?<Other>\d{3,})
您会得到的:
{
"Phonenumber": "0123456789",
"Mandate": "5467894",
"Type": "ACCP ",
"Other": "844"
}