全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Java基于正则实现的日期校验功能示例

本文实例讲述了Java基于正则实现的日期校验功能。分享给大家供大家参考,具体如下:

private void checkDate() throws IOException {
    // 4种分隔符
    String sep = "[-\\./_]";
    // 年份
    String strPattern = "^(19[4-9]\\d|20\\d{2})" + sep;
    strPattern += "(";
    // 月(1,3,5,7,8,10,12)
    strPattern += "((0?[13578]|1[02])" + sep + "(0?[1-9]|[12][0-9]|3[01]))|";
    // 月(4,6,9,11)
    strPattern += "((0?[469]|11)" + sep + "(0?[1-9]|[12][0-9]|30))|";
    // 月(2)
    strPattern += "((2)" + sep + "(0?[1-9]|[12]\\d))";
    strPattern += ")$";
    Pattern p = Pattern.compile(strPattern);
    Matcher m = p.matcher("");
    int count = 0;
    String fileName = ExcelGene.class.getResource("date.txt").getFile();
    BufferedReader br = new BufferedReader(new FileReader(fileName));
    String line = null;
    while ((line = br.readLine()) != null) {
      count++;
      if (line.trim().length() > 0) {
        m.reset(line);
        if (!m.find()) {
          System.out.println(count + " " + line);
        } else {
          String year = m.group(1);
          String month = m.group(4);
          month = month == null ? m.group(7) : month;
          month = month == null ? m.group(10) : month;
          String date = m.group(5);
          date = date == null ? m.group(8) : date;
          date = date == null ? m.group(11) : date;
          System.out.println(year + "年" + month + "月" + date + "日");
        }
      }
    }
}

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

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

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

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


# Java  # 正则  # 日期校验  # javax.validation自定义日期范围校验注解操作  # java正则表达式校验日期格式实例代码  # Java日期工具类时间校验实现  # 正则表达式  # 给大家  # 所述  # 程序设计  # 再为  # 测试工具  # 分隔符  # 讲述了  # Matcher  # compile  # int 


相关文章: 如何快速完成中国万网建站详细流程?  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  如何在腾讯云免费申请建站?  建站之星免费模板:自助建站系统与智能响应式一键生成  如何在万网自助建站中设置域名及备案?  如何高效完成独享虚拟主机建站?  建站之星Pro快速搭建教程:模板选择与功能配置指南  免费制作海报的网站,哪位做平面的朋友告诉我用什么软件做海报比较好?ps还是cd还是ai这几个软件我都会些我是做网页的?  建站之星后台管理:高效配置与模板优化提升用户体验  如何用花生壳三步快速搭建专属网站?  建站之星代理费用多少?最新价格详情介绍  定制建站流程步骤详解:一站式方案设计与开发指南  微信小程序制作网站有哪些,微信小程序需要做网站吗?  如何在建站主机中优化服务器配置?  建站主机SSH密钥生成步骤及常见问题解答?  如何做网站制作流程,*游戏网站怎么搭建?  制作宣传网站的软件,小红书可以宣传网站吗?  网站制作难吗安全吗,做一个网站需要多久时间?  ,sp开头的版面叫什么?  如何通过虚拟主机快速搭建个人网站?  陕西网站制作公司有哪些,陕西凌云电器有限公司官网?  长春网站建设制作公司,长春的网络公司怎么样主要是能做网站的?  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  岳西云建站教程与模板下载_一站式快速建站系统操作指南  如何在IIS管理器中快速创建并配置网站?  建站之星多图banner生成与模板自定义指南  韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐  如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法  Thinkphp 中 distinct 的用法解析  建站之星价格显示格式升级,你的预算足够吗?  广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?  如何用wdcp快速搭建高效网站?  建站之星如何助力企业快速打造五合一网站?  如何高效搭建专业期货交易平台网站?  如何获取PHP WAP自助建站系统源码?  企业宣传片制作网站有哪些,传媒公司怎么找企业宣传片项目?  如何用PHP工具快速搭建高效网站?  Dapper的Execute方法的返回值是什么意思 Dapper Execute返回值详解  nginx修改上传文件大小限制的方法  定制建站如何定义?其核心优势是什么?  C++如何使用std::optional?(处理可选值)  如何快速选择适合个人网站的云服务器配置?  公司门户网站制作流程,华为官网怎么做?  济南网站建设制作公司,室内设计网站一般都有哪些功能?  c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】  建站之星如何保障用户数据免受黑客入侵?  网站好制作吗知乎,网站开发好学吗?有什么技巧?  台州网站建设制作公司,浙江手机无犯罪记录证明怎么开?  贸易公司网站制作流程,出口贸易网站设计怎么做?  如何在Golang中使用encoding/gob序列化对象_存储和传输数据 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。