我想解析一个字符串在java上。 我有类型是解析正则exprision日期
EEE, dd MMM yyyy kk:mm:ss z
像
Sat, 10 Mar 2012 20:01:27 +0200
,也可以是没有空间
Sat,10 Mar 2012 20:01:27 +0200
,我希望得到的字符串这样
kk:mm dd/MM/yyyy
谢谢很多! 你可以举一个例子,如何只用正则表达式
我想解析一个字符串在java上。 我有类型是解析正则exprision日期
EEE, dd MMM yyyy kk:mm:ss z
像
Sat, 10 Mar 2012 20:01:27 +0200
,也可以是没有空间
Sat,10 Mar 2012 20:01:27 +0200
,我希望得到的字符串这样
kk:mm dd/MM/yyyy
谢谢很多! 你可以举一个例子,如何只用正则表达式
做才不至于formatdate这是SimpleDateFormat
容易得多:
SimpleDateFormat format = new SimpleDateFormat("EEE, dd MMM yyyy kk:mm:ss Z");
Date date = formatter.parse("Sat, 10 Mar 2012 20:01:27 +0200");
SimpleDateFormat out = new SimpleDateFormat("kk:mm dd/MM/yyyy");
String output = formatter.format(date);
你当然可以写一个正则表达式来做到这一点,但为什么不直接使用SimpleDateFormat.parse和SimpleDateFormat.format?
如果您接受两种不同的格式,您可以在try/catch中执行第一个解析,并在ParseException的catch块中执行第一个解析,您可以执行第二个检查。
http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html
我做了一些例子,但仍然不知道如何MMM转换为MM我觉得是[A-ZA-Z] + [0-9] +等,但我不认为它的权利要做 – 2012-03-12 18:56:15
http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html可能会有所帮助 – zapl 2012-03-12 18:57:19