验证日期

来源:互联网 发布:淘宝网怎么改评价 编辑:程序博客网 时间:2024/06/05 02:00
package com.zhimai.struts.util;


import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.regex.Matcher;
import java.util.regex.Pattern;


public class teset {


/**
* @param args
*/
public static void main(String[] args) {
 
       String checkValue = "2008-11-10";   
       DateFormat dateFormat = new SimpleDateFormat("yyyy-M-d");   
       Date d = null;   
       if(checkValue != null && !checkValue.equals(""))   
       {   
           if(checkValue.split("/").length > 1)   
           {   
               dateFormat = new SimpleDateFormat("yyyy-M-dd");   
           }   
           if (checkValue.split("-").length > 1)   
           {   
               dateFormat = new SimpleDateFormat("yyyy-MM-dd");   
           }   
       }else  
       {   
           return;   
       }   
       try  
       {   
           d = dateFormat.parse(checkValue);   
           System.out.println(d);   
       }   
       catch(Exception e)   
       {   
           System.out.println("格式错误");   
           return;   
       }   
       String eL= "^((\\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-2][0-9]))\\:([0-5]?[0-9])((\\s)|(\\:([0-5]?[0-9])))))?$";   
       Pattern p = Pattern.compile(eL);    
       Matcher m = p.matcher(checkValue);    
       boolean b = m.matches();   
       if(b)   
       {   
              
           System.out.println("格式正确");   
       }   
       else  
       {   
           System.out.println("格式错误");   
       }   
 
   }   

}
0 0