Javascript中的正则表达式-有效时间格式

Javascript中的正则表达式-有效时间格式,javascript,regex,Javascript,Regex,我用以下方法检查时间的格式是hh:mm 现在我还将允许负时间(-hh:mm) 我的正则表达式不好。也许有人能帮我学习正则表达式 function isAmountOfTimeValid(amountOfTime) { var pattern = new RegExp('^\\d{1,3}(:\\d{1,2})?$') var result = pattern.test(amountOfTime); return result; } 您可以尝试以下方法: /^-?\d{1

我用以下方法检查时间的格式是
hh:mm

现在我还将允许负时间(
-hh:mm

我的正则表达式不好。也许有人能帮我学习正则表达式

function isAmountOfTimeValid(amountOfTime) {
    var pattern = new RegExp('^\\d{1,3}(:\\d{1,2})?$')
    var result = pattern.test(amountOfTime);
    return result;
}
您可以尝试以下方法:

/^-?\d{1,2}(?::\d{1,2})?$/
它与OP regex非常相似,只添加了
-?
以可选地匹配字符串开头的负号,并用非捕获(
?:
)替换捕获组,因为此处不需要捕获任何内容


函数isAmountOfTimeValid(amountOfTime){
var pattern=newregexp('^-?\\d{1,2}(?:\\\d{1,2})?$)
var结果=模式测试(amountOfTime);
返回结果;
}
变量测试集=[“13:00”、“-13:00”、“13”、“133:0”]
对于(变量i=0;i}
Try:
var模式=/^-?\d{1,2}(:\d{1,2})?$/