"^\\d{4}[\\-\\/\\s]?(((([13578])|(1[02]))\\-(([0-9])|([1-2][0-9])|(3[01])))|((([469])|(11))\\-(([0-9])|([1-2][0-9])|(30)))|(2\\-(([0-9])|([1-2][0-9])))) (([0]?[1-9]|1[0-2])(:)([0-5][0-9]))$"
or ^\\d{4}[\\-\\/\\s]?((((0[13578])|(1[02]))\\-(([0-2][0-9])|(3[01])))|(((0[469])|(11))\\-(([0-2][0-9])|(30)))|(02\\-[0-2][0-9])) (([0]?[1-9]|1[0-2])(:)([0-5][0-9]))$"long or short

解决方案 »

  1.   

    既然如此,为什么要用正则表达式写日期呢?你直接用ValidatorField控件
    验证不就行了吗?又简单又方便。
      

  2.   

    //日期格式yyyy/mm/dd 
    /^(\d{4})/(0\d{1}|1[0-2])/(0\d{1}|[12]\d{1}|3[01])$/;
      

  3.   

    ValidatorField控件就包含了type为date类型的验证,他提供了上面所有这些人的还要完善的正则表达式验证,所以真没有必要去写这么长的代码去验证。眼花缭乱......
      

  4.   

    如果要验证一个控件上没有的type你又该怎么办?学会正则表达式并没有错,这样才能更准确地验证自己想要验证的类型。