当前位置: 首页 > 编程笔记 >

Java正则判断日期格式是否正确的方法示例

司空通
2023-03-14
本文向大家介绍Java正则判断日期格式是否正确的方法示例,包括了Java正则判断日期格式是否正确的方法示例的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了Java正则判断日期格式是否正确的方法。分享给大家供大家参考,具体如下:

1、Java中用正则表达式判断日期格式是否正确

DateType.java

/**
 * @Title:DateType.java
 * @Package:com.you.dao
 * @Description:
 * @Author: 游海东
 * @Version V1.2.3
 */
package com.you.dao;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
 * @类名:DateType
 * @描述:
 * @Author:游海东
 */
public class DateType
{
  /**
   *
   * @类名:DateSelect
   * @描述:
   * @Author:游海东
   */
  public static class DateSelect
  {
    public boolean isDate(String date)
    {
      /**
       * 判断日期格式和范围
       */
      String rexp = "^((\\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]))))))";
      Pattern pat = Pattern.compile(rexp);
      Matcher mat = pat.matcher(date);
      boolean dateType = mat.matches();
      return dateType;
    }
  }
  /**
   * @Title : main
   * @Type : DateType
   * @Description :
   * @param args
   */
  public static void main(String[] args)
  {
    /**
     * 日期格式正确
     */
    String date1 = "2014-01-03";
    /**
     * 日期范围不正确---平年二月没有29号
     */
    String date2 = "2014-02-29";
    /**
     * 日期月份范围不正确---月份没有13月
     */
    String date3 = "2014-13-03";
    /**
     * 日期范围不正确---六月没有31号
     */
    String date4 = "2014-06-31";
    /**
     * 日期范围不正确 ----1月超过31天
     */
    String date5 = "2014-01-32";
    /**
     * 这个测试年份
     */
    String date6 = "0014-01-03";
    DateSelect date = new DateSelect();
    /**
     * 打印正确日期格式
     */
    System.out.println(date.isDate(date1));
    /**
     * 打印date1
     */
    System.out.println(date.isDate(date2));
    /**
     * 打印date3
     */
    System.out.println(date.isDate(date3));
    /**
     * 打印date4
     */
    System.out.println(date.isDate(date4));
    /**
     * 打印date5
     */
    System.out.println(date.isDate(date5));
    /**
     * 打印date6
     */
    System.out.println(date.isDate(date6));
  }
}

2、运行结果

true
false
false
false
false
true

PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:

JavaScript正则表达式在线测试工具:
http://tools.jb51.net/regex/javascript

正则表达式在线生成工具:
http://tools.jb51.net/regex/create_reg

希望本文所述对大家java程序设计有所帮助。

 类似资料:
  • 本文向大家介绍C#正则表达式判断输入日期格式是否正确,包括了C#正则表达式判断输入日期格式是否正确的使用技巧和注意事项,需要的朋友参考一下 本文将介绍一段实例代码,来讲解利用正则表达式使C#判断输入日期格式是否正确的方法。希望这段代码能对大家有所帮助。  通常我们在用C#编写系统程序或者Web开发时,都会遇到需要验证输入的字符串是否是日期的情况,下面为大家介绍一种非常全面的用正则表达式验证日期的方

  • 本文向大家介绍ios利用正则表达式判断手机号码格式是否正确的实例,包括了ios利用正则表达式判断手机号码格式是否正确的实例的使用技巧和注意事项,需要的朋友参考一下 实例如下: 以上这篇ios利用正则表达式判断手机号码格式是否正确的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。

  • 本文向大家介绍C#判断日期是否到期的方法,包括了C#判断日期是否到期的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#判断日期是否到期的方法,在C#程序开发中非常具有实用价值。分享给大家供大家参考之用。具体方法如下: 一般在用户权限系统中,有时候需要根据用户的签约时间和签约时长来判断是否到期。先来看看帮助类如下: 客户端调用代码如下: 运行结果显示:还没到期~~ 希望本文所述对大家

  • 问题内容: 我已经看到JSON日期格式的许多不同标准: 哪一个是正确的?还是最好的?有什么标准吗? 问题答案: JSON本身 没有 指定日期应如何表示,但JavaScript却指定了。 您 应该 使用的方法发出的格式: 原因如下: 它是人类可读的,但也很简洁 排序正确 它包括小数秒,可以帮助重新建立时间顺序 符合ISO 8601 ISO 8601已经在国际上建立了十多年的历史 W3C,RFC333

  • 本文向大家介绍iOS判断身份证号码是否正确的方法,包括了iOS判断身份证号码是否正确的方法的使用技巧和注意事项,需要的朋友参考一下 ①根据百度百科中身份证号码的标准实现该方法 ②该方法只能判断18位身份证,且不能判断身份证号码和姓名是否对应(要看姓名和号码是否对应,应该有大量的数据库做对比才能实现) ③直接copy这段代码,就能通过调用这个方法判断身份证号码是否符合标准,非常easy 以上就是本文

  • 我见过很多不同的JSON日期格式标准: 哪一个是正确的?还是最好?这方面有什么标准吗?