中缺少AM/PM
如何在javascript中创建只获取时间的正则表达式?
[12/21/2015 1:00:42.016 AM]
我正在尝试获得
凌晨1:00(即HH:MM AM/PM)
这就是我尝试的
input.match(/d+/g) // => [12,21,2015,1,00,42,016]
结果/
这可以在不使用RegExp或库的情况下非常简单地完成。
var s = '[12/21/2015 1:00:42.016 AM]';
var p = s.split(' ').slice(1);
p[0] = p[0].slice(0, p[0].lastIndexOf(':'));
p = p.join(' ').slice(0, -1);
document.body.textContent = p;
(d{1,2}:d{2}):d{2}.d+ ([AP]M)
现在,第一组将包含时间,第二组-AM/PM
看到它在行动
timeRegex = /(d{1,2}:d{2}):d{2}.d+ ([AP]M)/;
found = "[12/21/2015 1:00:42.016 AM]".match(timeRegex);
console.log(found[1]); // => "1:00"
console.log(found[2]); // => "AM"