2014-12-18 37 views
0

我有一個CSV文件,並在有日期和時間如何在java中驗證字符串匹配所需模式?

2014-05-11T09的字符串表示:00:01.772401

我想驗證它的格式如下。我的想法是使用正則表達式來匹配一個模式,如 4個數字後跟一個 - 2個數字後跟一個 - 等等等等,但我不太熟悉正則表達式來構建它。

驗證一個字符串是否匹配使用正則表達式最好的特定模式,或者我應該使用其他的東西。如果正則表達式是可以的,請提供正則表達式並解釋驗證過程中Char的表示。

此外,任何可以更好地解釋正則表達式模式匹配的鏈接將不勝感激。

+0

的http://文檔.oracle.com/javase/tutorial/essential/regex/ – ajb

回答

2

您可以使用SimpleDateFormat來確定字符串表示是否有效。

從您的字符串

2014-05-11T09:00:01.772401

看來這個模式將是:yyyy-MM-dd'T'hh:mm:ss.SSSSSS

用法示例:

public static void main(String[] args) { 
    String t = "2014-05-11T09:00:01.772401"; 
    final String pattern = "yyyy-MM-dd'T'hh:mm:ss.SSSSSS"; 
    SimpleDateFormat sdf = new SimpleDateFormat(pattern); 
    try { 
     sdf.parse(t); 
     System.out.println("Valid"); 
    } catch(java.text.ParseException e) { 
     System.out.println("Invalid format"); 
    } 
} 
+0

甚至沒有想過使用SimpleDateFormat來檢查有效性謝謝。 – Jeremy

相關問題