我有一個可怕的格式化日誌文件(我無法更改它是如何創建的),我希望對其進行一些分析。R讀取並轉換文件中的行
我有一個正則表達式匹配日誌文件中的特定行。這些行包含我想要在分析前提取並放入矩陣的數據(字符串和數字,這些數據將被RegEx中的匹配組捕獲)。
完成此操作的最佳方法是什麼?使用gsub
函數可能? (我對R很陌生)
編輯,以解決評論。
我不能發佈日誌文件的內容,但我可以給我想要一個例子:
我的日誌文件看起來像這樣:
....
[Node_1] sometext [Ref:1111111, Strategy:4] Initialise Class1
[Node_1] sometext [Ref:1111111, Strategy:4] Initialise Class1 - 3432ms
some non relevant text
more non relevant text
[Node_4] sometext [Ref:1133311, Strategy:5] Run Class76
[Node_4] sometext [Ref:1133311, Strategy:6] Run Class76 - 5432ms
....
我只希望在行讀它們在最後有定時,我希望矩陣中的對應行包含行中的數據位。
所以,如果我正則表達式是這樣的:
^\[([^]]*)\][^[]*\[([^]]*)\] (Initialise|Run) (Class[0-9]+) - ([0-9]+)ms$
我想在矩陣行是
\1,\2,\4,\5
IE在日誌文件中的2號線,在矩陣中的行內容如下:
Node_1, "Ref:1111111, Strategy:4", Class1, 3432
請告訴我們您的日誌文件,你的正則表達式模式和所需輸出的(小),例如,然後我們可以附和(編輯原帖,請勿將其粘貼在評論中)。 – Arun 2013-03-11 13:35:02
@阿倫,感謝您的期待,我添加了您要求的相關信息。 – Griffin 2013-03-11 14:11:51