日期格式校验

正则表达式校验YYYYMMDD日期格式
首先,我们先了解2个概念:

1、合法的日期范围:

DateTime 值类型表示值范围在公元(基督纪元)0001 年 1 月 1 日午夜 12:00:00 到公元 (C.E.) 9999 年 12 月 31 日晚上 11:59:59 之间的日期和时间。

2、平年和闰年

地球绕太阳公转一周叫做一回归年,一回归年长365日5时48分 46秒。因此,公历规定有平年和闰年,平年一年有365日,比回归年短0.2422日,四年共短0.9688日,故每四年增加一日,这一年有366日,就 是闰年。但四年增加一日比四个回归年又多0.0312日,400年后将多3.12日,故在400年中少设3个闰年,也就是在400年中只设97个闰年,这样公历年的平均长度与回归年就相近似了。由此规定:年份是整百数的必须是400的倍数才是闰年,例如1900年、2100年就不是闰年。

验证YYYY年份:

\d{3}[1-9]|\d{2}[1-9]\d|\d[1-9]\d{2}|[1-9]\d{3}

验证MMDD月日:

大月(1、3、5、7、8、10、12月,有31天)

(0[13578]|1[02])(0[1-9]|[12]\d|3[01])

小月(4、6、9、11月,有30天)

(0[469]|11)(0[1-9]|[12]\d|30)

平年2月(有28天)

02(0[1-9]|[1]\d|2[0-8])

闰年:

能被4整除但不能被100整除的年份

(\d{2})(0[48]|[2468][048]|[13579][26])

能被400整除的年份

((0[48]|[2468][048]|[3579][26])00)

闰年2月(有29天)

((\d{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))0229

最终,验证YYYYMMDD的正则表达式为

((\d{3}[1-9]|\d{2}[1-9]\d|\d[1-9]\d{2}|[1-9]\d{3})(((0[13578]|1[02])(0[1-9]|[12]\d|3[01]))|((0[469]|11)(0[1-9]|[12]\d|30))|(02(0[1-9]|[1]\d|2[0-8]))))|(((\d{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))0229)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Bootstrap 可以使用 `bootstrap-datepicker` 插件来进行日期格式校验。具体步骤如下: 1. 引入 bootstrap 和 bootstrap-datepicker 的 CSS 和 JS 文件。 ```html <link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/4.5.0/css/bootstrap.min.css"> <link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/bootstrap-datepicker/1.9.0/css/bootstrap-datepicker.min.css"> <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <script src="https://cdn.bootcdn.net/ajax/libs/bootstrap/4.5.0/js/bootstrap.min.js"></script> <script src="https://cdn.bootcdn.net/ajax/libs/bootstrap-datepicker/1.9.0/js/bootstrap-datepicker.min.js"></script> ``` 2. 在 HTML 中添加日期选择器,并设置日期格式校验规则。 ```html <input type="text" id="datepicker" data-provide="datepicker" data-date-format="yyyy-mm-dd" required> ``` 在这个示例中,我们使用了 `data-provide` 和 `data-date-format` 属性来设置日期选择器和日期格式。同时,我们还添加了 `required` 属性来设置日期为必填项。 3. 使用 JavaScript 初始化日期选择器,并添加校验规则。 ```javascript $(document).ready(function() { $('#datepicker').datepicker({ format: 'yyyy-mm-dd', startDate: '-3d', endDate: '+3d', autoclose: true, todayHighlight: true }); }); ``` 在这个示例中,我们使用了 `datepicker()` 方法来初始化日期选择器,并添加了一些校验规则,如 `startDate` 和 `endDate` 来限制可选日期的范围,`autoclose` 来自动关闭日期选择器,`todayHighlight` 来设置今天日期高亮显示。 这样就可以使用 bootstrap-datepicker 插件来进行日期格式校验了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值