【问题标题】:Regarding regular expression in java关于java中的正则表达式
【发布时间】:2018-03-23 23:01:57
【问题描述】:

的正则表达式是什么

2017 年 10 月 12 日上午 10:07

我试过"^[A-Z][a-z1-10]\s[1-31]\,[2016-2018]\s[0-12]\:[00-60]\sAM|PM]$"

但这不起作用。 请帮忙

【问题讨论】:

  • 为什么要使用正则表达式,为什么不尝试使用 simpledateformat 解析?
  • 好吧,你的正则表达式是错误的。而且,就像 ScaryWombat 所说,为什么不尝试解析它呢?
  • 我认为您需要返回并查看如何执行正则表达式(以及为什么在这里不起作用)。
  • 与该字符串完全匹配的正则表达式(仅此而已)是October 12, 2017 10:07 am

标签: java regex


【解决方案1】:

我认为您不能接受任何任意字符而不是月份名称,因此您应该采用以下解决方案:

^(?:January|February|March|April|May|June|July|August|September|October|Novermber|December)\s+([0-2][1-9]|3[0-1]|[1-9]|),\s*[1-2]\d{3}\s+[0-1][0-2]:[0-5][0-9]\s*[ap]m\s*$

Regex 101 Demo

【讨论】:

    【解决方案2】:

    你可以试试这个:

    ^[A-Za-z0-9]+\s[0-9]{2}\,\s[0-9]{4}\s[0-9]{2}\:[0-9]{2}\sam|pm$
    

    【讨论】:

      猜你喜欢
      • 2015-04-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-29
      • 1970-01-01
      • 2017-02-08
      • 2015-12-13
      • 2015-03-26
      相关资源
      最近更新 更多