如何解决通过 GROK 或 REGEX 从路径中获取文件名
如何从 grok/regex 中的路径获取应用程序名称?
示例路径:
PL
预期输出:
start end LT MA PL
10.10.80.10 10.55.10.1 0 1 1
10.100.80.10 10.55.10.1 0 0 1
12.100.90.10 100.100.12.1 1 0 1
注意:
- 应用名称总是以 .exe 结尾
- 路径在目录方面可能具有或多或少的深度
测试:
C:\Temp\Logs\MyMainApp.SubApp.App.exe.010519.201123.9320.log
带有MyMainApp.SubApp.App
还尝试了 similar post 中的几个选项
解决方法
对于正则表达式,这应该可以工作(可能需要针对您的特定用例/环境进行一些调整)。
grid-template-rows: auto 1fr auto
,
在最后一个反斜杠之后的 .exe
之前,您可以重复尽可能少的用点分隔的单词字符。
该值在捕获组 1 中。
^.*\\(\w+(?:\.\w+)*?)\.exe[^\\\r\n]*$
模式匹配:
-
^.*\\
匹配直到最后一次出现\
-
(
捕获组 1-
\w+(?:\.\w+)*?
匹配 1+ 个单词字符并尽可能重复匹配.
和 1+ 个单词字符
-
-
)
关闭组 1 -
\.exe[^\\\r\n]*$
匹配.exe
后跟除\
以外的任何字符直到字符串结束
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。