Javascript函数用正则表达式验证时间00:00

Amr*_*mra 6 javascript regex validation time function

我正在尝试使用正则表达式创建一个javascript函数来验证和格式化24小时的时间,接受没有分号的时间和删除空格.
示例:
如果用户键入"0100"," 100"或者"100 "它将被接受但格式化为"01:00"
如果用户键入"01:00"它将被接受,而不需要格式化.

谢谢.

Ocu*_*cuS 21

function formatTime(time) {
    var result = false, m;
    var re = /^\s*([01]?\d|2[0-3]):?([0-5]\d)\s*$/;
    if ((m = time.match(re))) {
        result = (m[1].length === 2 ? "" : "0") + m[1] + ":" + m[2];
    }
    return result;
}
alert(formatTime(" 1:00"));
alert(formatTime("1:00 "));
alert(formatTime("1:00"));
alert(formatTime("2100"));
alert(formatTime("90:00")); // false
Run Code Online (Sandbox Code Playgroud)

任何具有无效输入格式的调用都将返回false.