【问题标题】:Validation on Regex in time format以时间格式验证正则表达式
【发布时间】:2014-07-22 08:59:31
【问题描述】:

我有一个搜索字符串:

var searchString = "the times are 21:06 , 03-25 , 16:565";

然后我使用正则表达式仅获取有效时间,

像这样:

var reg = /\d{2}[:-]\d{2}/gi

但是当我做alert(search.match(reg)); 时,输出是:

21:06,03-25,16:56

16:56 不应该显示,因为在我的searchString 中是16:565 我被困在如何防止最后一个值被我的正则表达式捕获。

如何实现我想要的验证?

任何帮助将不胜感激。谢谢!

【问题讨论】:

    标签: javascript regex validation


    【解决方案1】:

    您需要在正则表达式中添加单词边界 (\b):

    var reg = /\b\d{2}[:-]\d{2}\b/gi;
    

    【讨论】:

      【解决方案2】:

      对于精确时间匹配(24 小时格式),

      \b(?:0[1-9]|1[1-9]|2[0123])[:-](?:0[1-9]|[1-5][0-9]|00)\b
      

      DEMO

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-10-23
        • 2011-10-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多