如何在Javascript中使用AM/PM创建时间正则表达式

How to create regex for time with AM/PM in Javascript

本文关键字:PM 创建 时间 正则表达式 AM Javascript      更新时间:2023-09-26

如何在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]  

结果/

中缺少AM/PM

这可以在不使用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"