参见英文答案 > PHP: Time validation RegEx? 5个
我正在努力验证时间
00:00 to 11:59 ends with AM OR PM
我正在考虑一些正则表达式,但没有成功验证时间.
我的java脚本函数是
function verifydata( incoming ) {
var re = (1[012]|[1-9]):[0-5][0-9](\\s)?(?i)(am|pm);
if(incoming.time.value != '' && !incoming.time.value.match(re))
{
alert("Invalid time format: " + incoming.time.value);
}
}
它不起作用
我也试过这个,不行
var re = /^(?:[01][0-9]|2[0-3]):[0-5][0-9]$/;
让我在哪里出错?
解决方法:
试试这个
function testTime( time ) {
var regex = /^([0-1][0-9])\:[0-5][0-9]\s*[ap]m$/i;
var match = time.match( regex );
if ( match ) {
var hour = parseInt( match[1] );
if ( !isNaN( hour) && hour <= 11 ) {
return true;
}
}
return false;
}
testTime( '12:00 AM' ); // false
testTime( '11:59 PM' ); // true
testTime( '00:00 AM' ); // true
testTime( '00:00am' ); // true
testTime( '10:00pm' ); // true
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。