2017-03-18 26 views
1

我收到的格式爲'HH:mm:ss'。我想刪除前導零,但始終保留最後四個字符,例如m:ss,即使m將爲零。我正在格式化音頻持續時間。從時間格式中刪除前導零

實例:

00:03:15 =>3:15
10:10:10 =>10:10:10
00:00:00 =>0:00
04:00:00 =>4:00:00
00:42:32 =>42:32
00:00:18 =>0:18
00:00:08 =>0:08

回答

2

您可以使用此替代:

var result = yourstr.replace(/^(?:00:)?0?/, ''); 

demo

或更好:

var result = yourstr.replace(/^0(?:0:0?)?/, ''); 

demo

+0

回報':00:00'的'0:00:00 ' – Matt

+0

@Matt:從問題:*「我收到一個字符串,這種格式'HH :mm:ss'「* –

+0

我的不好,足夠公平 – Matt

0

你可以做這樣的事情:

var tc =['00:03:15', '10:10:10','00:00:00','04:00:00','00:42:32','00:00:18','00:00:08']; 
 

 
tc.forEach(function(t) { 
 
    var y = t.split(":"); 
 
    y[0] = y[0].replace(/^[0]+/g, ''); 
 
    if(y[0] === '') { 
 
     y[1] = y[1].replace(/^0/g, ''); 
 
    } 
 
    var r = y.filter(function(p) {return p!=='';}).join(':'); 
 
    console.log(r); 
 
});

鴻溝在3個部分的時間。如果第一個零件是空的,則從第一個零件中刪除前導零,如果沒有,則從第二個零件中刪除前導零,否則保留。然後加入他們全部放棄空的字符串。