我有特定的日誌消息,我想將其解析爲組。如果我的字符串更具體,我想製作一個替代版本。正則表達式 - 將字符串解析爲組
我的日誌:
18:48:24:284 => [DEBUG] [xxx.yyy.zzz] [8] Message1
18:48:24:671 => [INFO] [uuu.www.aaa] [8] Method: 'ReturnType MethodName(MethodParameter)'. Line: ~30. Message2
我寫了下面的正則表達式:
(?<timestamp>\d+:\d+:\d+:\d+.*)\s+=>\s+\[(?<level>\w+)\]\s+\[(?<emmiter>.*)\]\s+\[(?<thread>\d+)\]\s+(?<message>.*)
它解析這些消息到特定羣體:
timestamp: 18:48:24:284
level: DEBUG
emmiter: xxx.yyy.zzz
thread: 8
message: Message1
timestamp: 18:48:24:671
level: INFO
emmiter: uuu.www.aaa
thread: 8
message: Method: 'ReturnType MethodName(MethodParameter)'. Line: ~30. Message2
但現在我想再加2個組,如果它們存在的話:方法和行
所以,我想獲得這樣的結果:
timestamp: 18:48:24:284
level: DEBUG
emmiter: xxx.yyy.zzz
thread: 8
method:
line:
message: Message1
timestamp: 18:48:24:671
level: INFO
emmiter: uuu.www.aaa
thread: 8
method: ReturnType MethodName(MethodParameter)
line: ~30
message: Message2
你能幫我嗎?我所做的每件事都會導致僅解析Line1
或僅解析Line2
,但我想用一個正則表達式解析它們。
您正在運行哪個lang?你的嘗試在哪裏? –
你正在使用哪種開發環境/語言?請爲您的問題添加適當的標籤!另外,請提供您已經編寫的正則表達式! –
我在外部應用程序中使用它。我認爲它是Java。 我更新了我的當前狀態正則表達式 – Tomasz