我有一个读取消息的代码,如果消息中有日期,那么它应该特别显示在显示中。我被困在我必须搜索整个string
日期并提取它的部分?
答案 0 :(得分:0)
尝试使用下面的正则表达式是伪代码
public static void main(String[] args) throws FileNotFoundException, ParseException {
String string = "Temp_2014_09_19_01_00_00.csv";
SimpleDateFormat format = new SimpleDateFormat("yyyy_MM_dd");
Pattern p = Pattern.compile("\\d\\d\\d\\d_\\d\\d_\\d\\d");
Matcher m = p.matcher(string);
Date tempDate = null;
if(m.find())
{
tempDate = format.parse(m.group());
}
System.out.println("" + tempDate);
}
正则表达式查找4digits_2digits_2digits然后如果找到一个并尝试将其转换为日期,则需要匹配。如果找不到匹配,则tempDate将为null。如果你想引入时间戳,你也可以这样做。