0
Sep 25, 2013 4:51:00 PM

想要为上面的日期时间格式创建一个正则表达式,我有以下时间正则表达式

([1-9]|1[0-2]|):([0-5][0-9]:[0-5][0-9]) (AM|am|PM|pm) 

但似乎无法弄清楚日期,任何帮助将不胜感激!

4

3 回答 3

7

为什么不直接使用

String text = "Sep 25, 2013 4:51:00 PM";
Date date = new SimpleDateFormat("MMM dd, yyyy HH:mm:ss a").parse(text);
于 2013-09-30T11:35:33.257 回答
1

你想达到什么目的?我只能猜测您想从日期中获取一些组件,因此 SimpleDateFormat 可能是您真正想要的。建议使用它而不是正则表达式,因为它还可以处理语言环境,这是 RegExp 无法做到的。

编辑:

你应该有一个像 (Jan|Feb| ... |Dec) 这样的月份的 OR 正则表达式,其余的很简单,匹配空格 \s*,匹配日期 [0-9]{1,2},匹配 a ,,再次匹配一些空格 \s*,匹配年份 [0-9]{4},另一个空格 \s* 和 RegExp 的其余部分。

于 2013-09-30T11:37:34.270 回答
0

([0-9]{4}[-][0-9]{2}[-][0-9]{2}[-][0-9]{2}[-][0-9] {2}) 1980-02-02-05-00

于 2017-01-24T16:22:34.067 回答