Java Regex的日期时间

时间:2013-09-30 11:32:08

标签: java regex datetime

Sep 25, 2013 4:51:00 PM

希望如上所述为日期时间格式创建正则表达式 我当时有以下正则表达式

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

但似乎无法弄清楚日期,任何帮助都会受到赞赏!!

3 个答案:

答案 0 :(得分:7)

为什么不使用

String text = "Sep 25, 2013 4:51:00 PM";
Date date = new SimpleDateFormat("MMM dd, yyyy HH:mm:ss a").parse(text);

答案 1 :(得分:1)

你想要达到什么目的?我只能猜测你想从日期中获取一些组件,所以SimpleDateFormat可能就是你真正想要的。建议使用它而不是正则表达式,因为它也可以处理区域设置,这是RegExp无法做到的。

修改

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

答案 2 :(得分:0)

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