我正在使用logstash过滤器grok,我需要一个模式(regEx)用于此表达式:
面包车= FpP2N410E%252FbhMY%252FBvfstlbL6YmtlPKiQ%253D&安培;颜色= 7和; HV = 2701
我尝试了这个解决方案,但“颜色”并没有从“面包车”中分离出来。
((颜色=%{NUMBER:颜色})|(VAN =%{GREEDYDATA:VAN}))及((颜色=%{NUMBER:颜色})|( HV =%{NUMBER:HV}))
我需要OR,因为属性的顺序不同。
答案 0 :(得分:0)
解决方案是定义新模式VAN [A-Za-z0-9%] +
((颜色=%{NUMBER:颜色})|(VAN =%{VAN:VAN}))及((颜色=%{NUMBER:颜色})|( HV =%{NUMBER:HV}))
答案 1 :(得分:0)
不要重新发明轮子 - kv {}过滤器是为这样的东西设计的,它允许参数按任何顺序排列。