如何在Java中从任何字符串中提取日期时间模式?
该模式为"YYYYMMddkm"
。
是否有任何Joda时间的帮助方法可用?
字符串1: 2014041507393_somefile.somemore
字符串2: _somefile2014041507393.somemore
使用以下正则表达式:
^\d{4}-\d{2}-\d{2}$
如同
String date = "2014041507393_somefile.somemore";
if (str.matches("\\d{4}-\\d{2}-\\d{2}")) {
...
}
首先在Java中使用正则表达式,然后解析字符串以备后用:
if (str.matches("\\d{4}-\\d{2}-\\d{2}")) {
Date date = new SimpleDateFormat("yyyy-MM-dd", Locale.ENGLISH).parse(str);
System.out.println(date); // Example: Sat May 14 00:00:00 BOT 2014
}
SimpleDateFormat format = SimpleDateFormat("YYYYMMddkm");
format.parse(string, pos);
你必须自己处理掉字母。我认为Joda时间库没有提供任何方法来帮助你完成这个任务。