【发布时间】:2020-08-20 05:05:09
【问题描述】:
我正在尝试使用正则表达式从 Splunk 源中提取作业名称、区域。
以下是我的示例源格式:
/home/app/abc/logs/20200817/job_DAILY_HR_REPORT_44414_USA_log
通过以下内容,我可以提取作业名称:
(?<logdir>\/[\W\w]+\/[\W\w]+\/)(?<date>[^\/]+)\/job_(?<jobname>.+)_\d+
这是目前为止的比赛:
Full match 0-53 /home/app/abc/logs/20200817/job_DAILY_HR_REPORT_44414
Group `logdir` 0-19 /home/app/abc/logs/
Group `date` 19-27 20200817
Group `jobname` 32-47 DAILY_HR_REPORT
我还需要来自源的美国(地区)。你能帮忙建议一下吗。 区域将始终出现在数字字段 (44414) 之后,其位数可能会有所不同。 例如:123、1234、56789
提前谢谢你。
【问题讨论】:
-
您的正则表达式似乎非常适合您所取得的成就。为什么你不能以同样的方式开发最后一部分?有什么特殊的障碍让你卡住了吗?你尝试了什么?它是如何失败的?