Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript HH:MM时间格式正则表达式数组内部_Javascript_Regex_Validation - Fatal编程技术网

Javascript HH:MM时间格式正则表达式数组内部

Javascript HH:MM时间格式正则表达式数组内部,javascript,regex,validation,Javascript,Regex,Validation,我正在使用一些屏蔽输入插件,它支持作为正则表达式数组的屏蔽。在我的例子中,我想验证24小时时间格式(hh:mm)。我现在使用的正则表达式如下: [/^([0-2])/, /([0-9])/, ':', /[0-5]/, /[0-9]/] 前2个数组元素表示小时 /^([0-2])/, /([0-9])/ 有没有关于如何验证第二个小时数字的建议?原因现在25:00有效,但不应该有效。需要以某种方式检查第一个数字,如果它是2-将[0-9]替换为[0-3] 像这样的东西会更灵活 const ar

我正在使用一些屏蔽输入插件,它支持作为正则表达式数组的屏蔽。在我的例子中,我想验证24小时时间格式(hh:mm)。我现在使用的正则表达式如下:

[/^([0-2])/, /([0-9])/, ':', /[0-5]/, /[0-9]/]
前2个数组元素表示小时

/^([0-2])/, /([0-9])/

有没有关于如何验证第二个小时数字的建议?原因现在25:00有效,但不应该有效。需要以某种方式检查第一个数字,如果它是2-将[0-9]替换为[0-3]

像这样的东西会更灵活

const arr=[“07:00”、“25:05”、“23:59”、“00:00”];
const valid=arr.filter(t=>{
常数部分=[hh,mm]=t.split(“:”);
返回!isNaN(hh)和+hh>=0和+hh<24和+isNaN(mm)和+mm>=0和+mm<60;
});

console.log(valid.length,arr.length,valid.length==arr.length)
@Kobe否,因为在我的情况下,我需要将每个字符拆分为单独的数组元素该插件只允许正则表达式限制单个字符,而不是整个输入。使用其他一些验证功能。比如,在提交验证时,
pattern=“(?:0?[0-9]| 1[0-9]| 2[0-3]):[0-5][0-9]”
那么regex不是解决方案。尝试使用普通javascript验证输入。您不能使用此插件,因为第二个正则表达式依赖于第一个正则表达式。请发布一个示例数组。这现在是一个X/Y问题