Java基于正则实现的日期校验功能示例
发布时间 - 2026-01-10 23:22:41 点击率:次本文实例讲述了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
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何基于云服务器快速搭建个人网站?
html5如何实现懒加载图片_ intersectionobserver api用法【教程】
作用域操作符会触发自动加载吗_php类自动加载机制与::调用【教程】
宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法
文字头像制作网站推荐软件,醒图能自动配文字吗?
Laravel如何设置定时任务(Cron Job)_Laravel调度器与任务计划配置
Laravel怎么进行数据库事务处理_Laravel DB Facade事务操作确保数据一致性
Python进程池调度策略_任务分发说明【指导】
js实现获取鼠标当前的位置
Laravel如何实现文件上传和存储?(本地与S3配置)
如何快速搭建个人网站并优化SEO?
深圳网站制作的公司有哪些,dido官方网站?
Laravel如何使用Service Provider注册服务_Laravel服务提供者配置与加载
Win11怎么开启自动HDR画质_Windows11显示设置HDR选项
LinuxCD持续部署教程_自动发布与回滚机制
大连网站制作公司哪家好一点,大连买房网站哪个好?
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
Laravel项目如何进行性能优化_Laravel应用性能分析与优化技巧大全
HTML 中如何正确使用模板变量为元素的 name 属性赋值
如何确认建站备案号应放置的具体位置?
iOS UIView常见属性方法小结
高端云建站费用究竟需要多少预算?
Python文本处理实践_日志清洗解析【指导】
品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?
无锡营销型网站制作公司,无锡网选车牌流程?
米侠浏览器网页图片不显示怎么办 米侠图片加载修复
jQuery 常见小例汇总
利用 Google AI 进行 YouTube 视频 SEO 描述优化
Laravel的辅助函数有哪些_Laravel常用Helpers函数提高开发效率
Laravel怎么集成Vue.js_Laravel Mix配置Vue开发环境
Laravel如何使用模型观察者?(Observer代码示例)
如何在浏览器中启用Flash_2025年继续使用Flash Player的方法【过时】
Laravel怎么设置路由分组Prefix_Laravel多级路由嵌套与命名空间隔离【步骤】
如何为不同团队 ID 动态生成多个“认领值班”按钮
如何在云主机上快速搭建网站?
手机怎么制作网站教程步骤,手机怎么做自己的网页链接?
laravel怎么为应用开启和关闭维护模式_laravel应用维护模式开启与关闭方法
如何在橙子建站中快速调整背景颜色?
html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】
网站制作大概要多少钱一个,做一个平台网站大概多少钱?
佛山企业网站制作公司有哪些,沟通100网上服务官网?
Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中
Python结构化数据采集_字段抽取解析【教程】
东莞专业网站制作公司有哪些,东莞招聘网站哪个好?
潮流网站制作头像软件下载,适合母子的网名有哪些?
Laravel怎么连接多个数据库_Laravel多数据库连接配置
如何生成腾讯云建站专用兑换码?
免费网站制作appp,免费制作app哪个平台好?
Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】
高防服务器如何保障网站安全无虞?

