Here you can find the source of checkDate(String date)
public static boolean checkDate(String date)
//package com.java2s; //License from project: Apache License import java.util.regex.Matcher; import java.util.regex.Pattern; public class Main { public static boolean checkDate(String date) { String regex = "^((\\d{2}(([02468][048])|([13579][26]))[\\-\\/\\s]?" + "((((0?[13578])|(1[02]))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(3[01])))" + "|(((0?[469])|(11))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(30)))" + "|(0?2[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])))))|(\\d{2}(([02468][1235679])" + "|([13579][01345789]))[\\-\\/\\s]?((((0?[13578])|(1[02]))[\\-\\/\\s]" + "?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\\-\\/\\s]" + "?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\\-\\/\\s]" + "?((0?[1-9])|(1[0-9])|(2[0-8]))))))(\\s(((0?[0-9])" + "|([1][0-9])|([2][0-3]))\\:([0-5]?[0-9])((\\s)|(\\:([0-5]?[0-9])))))?$"; Pattern p = Pattern.compile(regex); Matcher m = p.matcher(date); boolean b = m.matches(); return b; }/* w w w . j a v a 2s . c o m*/ }