Splunk中解析URL末尾部分出错,如何修正正则表达式?
问题分析与解决
你的正则表达式逻辑错在匹配范围上:
- 原正则里的
[^/]+在域名后的第一个斜杠/之后,会匹配第一个连续非斜杠的字符串,也就是URL里的CDs,自然拿不到最后面的exe文件名。
修正后的Splunk查询
index=<Server> sourcetype=<type> | rex field=URL_Field "http(s)?://.*/(?<EXE_NAME>[^/]+)"
修正逻辑
把原正则中域名后的[^/]+换成.*:
.*是贪婪匹配模式,会吃掉从域名后到最后一个斜杠之间的所有内容- 剩下的
(?<EXE_NAME>[^/]+)就会精准捕获最后一段的MartkingName_Product_Version.exe
内容的提问来源于stack exchange,提问作者iamMobile
相关产品推荐
相关产品推荐

