【问题标题】:Javascript match Time frome Time String [closed]Javascript从时间字符串匹配时间[关闭]
【发布时间】:2014-11-05 03:26:03
【问题描述】:

我有像“HH:MM:SS CEST”这样的日期,我只想匹配“HH:MM:SS”而不匹配 CEST 或其他字符串。

【问题讨论】:

  • 你已经陈述了你想要什么,那么发布你迄今为止尝试过的内容怎么样?请阅读How to Ask

标签: javascript regex time match


【解决方案1】:
Subject: 12:25:47 CEST
Regex: \d{2}[:]\d{2}[:]\d{2}
Tester: http://regex.larsolavtorvik.com/

【讨论】:

    【解决方案2】:

    试试这个:

    string = "I have date like "07:12:45 CEST" and I want to match only "23:32:16" without CEST or other string there."
    
    var m = string.match("(\d{2}:\d{2}:\d{2}))
    

    Demo

    【讨论】:

    • 67:12:45 是有效时间吗?
    • 那么为什么你的正则表达式匹配这个67:12:45
    【解决方案3】:

    除了此处发布的正则表达式方法之外,您还可以尝试使用像 momentjs 这样的日期/时间库,它支持从字符串进行高级解析。对于您的情况,您可以使用

    moment('12:03:40 CEST', 'HH:mm:ss')
    

    然后,如果你只想要时间部分,你可以使用格式功能,像这样:

    moment('12:03:40 CEST', 'HH:mm:ss').format('HH:mm:ss')
    

    这比正则表达式慢,并且需要在您的页面中包含一个库,但您可以进行各种日期/时间操作。

    但是如果你只想在另一个字符串中匹配一个时间字符串,那么我也推荐正则表达式。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-10
      • 2022-06-29
      • 2014-07-05
      • 1970-01-01
      • 2014-04-14
      • 1970-01-01
      相关资源
      最近更新 更多