yyyyMMdd的正则表达式日期验证 [英] regex date validation for yyyyMMdd

查看:2054
本文介绍了yyyyMMdd的正则表达式日期验证的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在寻找一个正则表达式字符串,它将验证格式为yyyyMMdd(无分隔符)的日期并适用于闰年。到目前为止,我发现的最接近的事情只是验证自2000年以来的日期。

I'm looking for a regex string that will validate dates formatted as yyyyMMdd (no delimiters) and works for leap years. The closest thing I found so far only validates dates since 2000.

import java.util.regex.Pattern;

public class TestDate {
  public static final Pattern datePattern = Pattern.compile("** Need RegEx **");

  public static void main(String[] args) {
    System.out.println(datePattern.matcher("19960229").matches());
  }
}


推荐答案

我建议使用 java.text.DateFormat ,如此页面所示

public static boolean isValidDateStr(String date) {
    try {
      SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
      sdf.setLenient(false);
      sdf.parse(date);
    }
    catch (ParseException e) {
      return false;
    }
    catch (IllegalArgumentException e) {
      return false;
    }
    return true;
  }

这篇关于yyyyMMdd的正则表达式日期验证的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆