Input : 2007-02-09 00:00:00.0
Expected : 2007-02-09
我们如何使用Java正则表达式截断00:00:00.0
?
答案 0 :(得分:2)
你可以做到
String a="2007-02-09 00:00:00.0";
String b=a.split("\\s")[0];
System.out.println(b); // 2007-02-09
您也可以使用SimpleDateForMat
String a = "2007-02-09 00:00:00.0";
Date myDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(a);
System.out.println(myDate);
String formattedDate = new SimpleDateFormat("yyyy-MM-dd").format(myDate);
System.out.println(formattedDate); // 2007-02-09
答案 1 :(得分:0)
提示:
- 使用
醇>indexOf([space])
和substring(index+1)
方法(无需正则表达式)。
如果你喜欢正则表达式使用:
- 醇>
String#replaceAll()
- >捕获一切直到空间,然后用捕获的组替换所有内容。
答案 2 :(得分:0)
试试这个:
String s = "2007-02-09 00:00:00.0";
System.out.println(s.replaceAll("\\s\\d{2}:\\d{2}:\\d{2}\\.\\d*", ""));
这将用什么都不替换timepart,所以你得到了预期的结果。