正则表达式匹配12小时的时间

Eth*_*han 3 regex

我一直收到这个正则表达式的错误:

^((([1-9])|(1[0-2])):([0-5])(0|5)/s(A|P)M)$
Run Code Online (Sandbox Code Playgroud)

它应该是一个以0或5结尾的时间.所以这里有一些应该工作:

  • 下午1:25
  • 11:00 AM
  • 晚上9:55

但我不断收到此错误消息:

内部错误匹配模式'^((([1-9])|(1[0-2])):([0-5])(0|5)/s(A|P)M)$'与值'1:00 PM'

我究竟做错了什么?

Vin*_*nce 7

\ s,而不是/ s.但你也应该做到这一点,因为人们偶然会插入很多空格.使用\ s*开始和结束正则表达式可能不是一个坏主意.如果有人在09:50投入时间怎么办?在第一组中包含0.


小智 5

我认为你应该使用\ s not/s


ret*_*ile 5

我想而不是'/ s',你想要'\ s',不是吗?