Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/365.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 日期的正则表达式,格式为hour.minute dayName day/month_Javascript_Regex_Validation_Date_Input - Fatal编程技术网

Javascript 日期的正则表达式,格式为hour.minute dayName day/month

Javascript 日期的正则表达式,格式为hour.minute dayName day/month,javascript,regex,validation,date,input,Javascript,Regex,Validation,Date,Input,我正在尝试用下面的代码验证str。我的最终目标是允许这种输入方式: 18.30周六最后一场比赛3/10 但是,我的代码甚至不能用于基本用法(98.5%str将采用这种格式): 19.30周五15/5 我缺少什么?正则表达式中检查日/月的最后一部分需要展开。它目前只匹配/###,但它也应该允许/#。最简单的修复方法是允许任一侧有一个或两个数字(例如12/31) 检查日/月的正则表达式的最后一部分需要展开。它目前只匹配/###,但它也应该允许/#。最简单的修复方法是允许任一侧有一个或两个数字(例如1

我正在尝试用下面的代码验证
str
。我的最终目标是允许这种输入方式:

18.30周六最后一场比赛3/10

但是,我的代码甚至不能用于基本用法(98.5%
str
将采用这种格式):

19.30周五15/5


我缺少什么?

正则表达式中检查日/月的最后一部分需要展开。它目前只匹配
/###
,但它也应该允许
/#
。最简单的修复方法是允许任一侧有一个或两个数字(例如12/31)


检查日/月的正则表达式的最后一部分需要展开。它目前只匹配
/###
,但它也应该允许
/#
。最简单的修复方法是允许任一侧有一个或两个数字(例如12/31)


你的正则表达式有很多问题

  • 开始和结束处的日期和时间匹配部分不允许使用1位或2位数字

  • >P>您可以考虑在开始和结束时锚定正则表达式,分别用<代码> ^ 和<代码> $< /代码>。

  • 字符类中的文字点不需要转义

  • 试试这个:

    var regex= /^[0-9]{1,2}[.:][0-9]{1,2} [A-Z][a-z]{5,8} [0-9]{1,2}\/[0-9]{1,2}$/;
    

    你的正则表达式有很多问题

  • 开始和结束处的日期和时间匹配部分不允许使用1位或2位数字

  • >P>您可以考虑在开始和结束时锚定正则表达式,分别用<代码> ^ 和<代码> $< /代码>。

  • 字符类中的文字点不需要转义

  • 试试这个:

    var regex= /^[0-9]{1,2}[.:][0-9]{1,2} [A-Z][a-z]{5,8} [0-9]{1,2}\/[0-9]{1,2}$/;
    


    @阿努巴瓦看到我的更新了<代码>[A-Z][A-Z]{4,7}与
    Saturday
    或任何带有下划线的内容不匹配?我相信“星期六”包含8个字母。@MikeSamuel是的,我想让它首先用于基本用法@阿努巴瓦看到我的更新了<代码>[A-Z][A-Z]{4,7}与
    Saturday
    或任何带有下划线的内容不匹配?我相信“星期六”包含8个字母。@MikeSamuel是的,我想让它首先用于基本用法!我对regex不熟悉。为什么要锚定?@gsamaras行首锚定将在有前导文本时阻止匹配。当有尾随文本时,行尾锚将阻止匹配。Asah抱歉再次询问,但这还不清楚。举个例子也许能帮上忙?另外,我仍然认为
    {4,7}
    应该是
    {5,8}
    。我错了吗?@gsamaras基本上,
    [A-Z]
    部分包含单个大写字符,
    [A-Z]{4,7}
    部分包含剩余的小写字母。例如:对于单词
    Saturday
    [A-Z]
    匹配
    S
    [A-Z]{4,7}
    匹配
    Saturday
    。有道理吗?我同意。以星期三为例。那不是需要8而不是7吗?另外,以星期五为例,它需要5个,因为有了4个,我可以写Fiday,而且还可以。为什么要锚定?@gsamaras行首锚定将在有前导文本时阻止匹配。当有尾随文本时,行尾锚将阻止匹配。Asah抱歉再次询问,但这还不清楚。举个例子也许能帮上忙?另外,我仍然认为
    {4,7}
    应该是
    {5,8}
    。我错了吗?@gsamaras基本上,
    [A-Z]
    部分包含单个大写字符,
    [A-Z]{4,7}
    部分包含剩余的小写字母。例如:对于单词
    Saturday
    [A-Z]
    匹配
    S
    [A-Z]{4,7}
    匹配
    Saturday
    。有道理吗?我同意。以星期三为例。那不是需要8而不是7吗?另外,以星期五为例,它需要5个,因为有了4个,我可以写Fiday,但仍然可以。我明白了,+1表示简单。我明白了,+1表示简单。
    var regex= /^[0-9]{1,2}[.:][0-9]{1,2} [A-Z][a-z]{5,8} [0-9]{1,2}\/[0-9]{1,2}$/;