我必须从数据中提取多个字段。有时数据模式略有不同,所以我希望它应该适用于所有这些模式。
我写过正则表达式,但它并不完美。
我的正则表达式保存在: https://regex101.com/r/V1gWZW/1
以下是我要提取的字段。
PS:正则表达式并非特定于任何语言。我将在Splunk Tool中使用它。
答案 0 :(得分:1)
我自己解决了这个问题。
最终工作正则表达式: https://regex101.com/r/V1gWZW/4
((?P<TIME_GC_TIMESTAMP>[^ ]*?):\s*)?(?P<relative_time>\d+\.\d+):.*(?P<Name>ParNew|P.*ParNew|PSYoungGen|DefNew):?\s?(?P<ParNew_before_1>\d+)K->(?P<ParNew_after_1>\d+)K\((?P<young_heap_size>\d+)K\)]?\s?(?P<ParNew_before_2>\d+)K\->(?P<ParNew_after_2>\d+)K\((?P<total_heap_size>\d+)K\),\s*(?P<par_new_duration>\d+\.\d+) secs\]
由于