2013-10-20 73 views
0

我現在有一個相當大的日誌文件,其中的線條看起來像這樣使用Javascript - 從日誌文件中刪除/斷開時間戳

2013-10-08 22:58:38 [INFO] [more info] Description or command 

我想知道如何把它在這一點上

2013-10-08 22:58:38 | [INFO] [more info] Description or command 
分裂該日期之後

右鍵,這樣我可以把它們放到不同的風格

<div class="console-line"><span class="Datetime">2013-10-08 22:58:38</span>[INFO] [more info] Description or command</div 

我知道如何將文本拆分處該確切點,但問題是,並不是所有的線路實際上有一個時間戳

+0

你能說出其他線條的樣子嗎? –

回答

0

你可以「[」的第一個索引處分割線:

var index = line.indexOf('['); 
line = '<div...>' + line.substring(0, index) + '</span>' + 
      line.substring(index) + '</div>' 
+0

你忘了打開 ^^ 這應該適用於大多數情況,但如果一行中沒有括號會發生什麼? –

+0

這個怎麼樣? '如果(line.indexOf( '[')> -1){ 線= '' + line.substring(0, index) + '' + line.substring(index) + '

'} 否則{ 線= '' + line + '
';' –

0

使用正則表達式查找時間戳。

我寫到:/^(\d{4}(?:\-\d{2}){2}\s\d{2}(?:\:\d{2}){2})(.*)/,它匹配兩組:時間戳和行的其餘部分。

Code here

+1

會發生在生產線中沒有時間戳的事件是什麼? –

+0

正則表達式不匹配。我的代碼在不匹配時不會放置span標籤。 – kelvinss

+0

你寫的東西似乎很好,但我剛剛修改了整個控制檯日誌查看器。我需要在php而不是javascript中做到這一點,任何想法? –