将字符串转换为时间码模式?
Transform string to timecode pattern?
如何在我的字符串中取零并得到以下结果(一些示例):
1 => 01
01.0 => 01.00
1.0.01.00 => 01.00.01.00
1.0.0.0 => 01:00:00:00
10.0.10.0 => 10:00:10:00
这是我到目前为止的想法,但它没有给我想要的东西。
感谢您的帮助!
tc = tc.replace('.', ':');
tc = tc.replace(',', ':');
tc = tc.replace(/(:|^)(\d)(?=:|$)/g, "");
在单词边界 (\b
) 包围的所有单个数字前添加 0
,然后使用字符集 [.,]
将每个逗号和句点替换为冒号。不要忘记在每个正则表达式上使用全局 (g
) 标志,以便 每个 目标模式都被替换,而不仅仅是第一个。
function timecode (s) {
return s.replace(/\b(\d)\b/g, '0').replace(/[.,]/g, ':')
}
console.log(timecode('1') === '01')
console.log(timecode('01.0') === '01:00')
console.log(timecode('1.0.01.00') === '01:00:01:00')
console.log(timecode('1.0.0.0') === '01:00:00:00')
console.log(timecode('10.0.10.0') === '10:00:10:00')
如何在我的字符串中取零并得到以下结果(一些示例):
1 => 01
01.0 => 01.00
1.0.01.00 => 01.00.01.00
1.0.0.0 => 01:00:00:00
10.0.10.0 => 10:00:10:00
这是我到目前为止的想法,但它没有给我想要的东西。 感谢您的帮助!
tc = tc.replace('.', ':');
tc = tc.replace(',', ':');
tc = tc.replace(/(:|^)(\d)(?=:|$)/g, "");
在单词边界 (\b
) 包围的所有单个数字前添加 0
,然后使用字符集 [.,]
将每个逗号和句点替换为冒号。不要忘记在每个正则表达式上使用全局 (g
) 标志,以便 每个 目标模式都被替换,而不仅仅是第一个。
function timecode (s) {
return s.replace(/\b(\d)\b/g, '0').replace(/[.,]/g, ':')
}
console.log(timecode('1') === '01')
console.log(timecode('01.0') === '01:00')
console.log(timecode('1.0.01.00') === '01:00:01:00')
console.log(timecode('1.0.0.0') === '01:00:00:00')
console.log(timecode('10.0.10.0') === '10:00:10:00')