亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > regex > 正文

史上最詳細的js日期正則表達式分享

2020-01-20 22:12:04
字體:
來源:轉載
供稿:網友

最簡單的正則 如 : /d{4}-/d{2}-/d{2}
但是實際情況卻不是那么簡單,,要考慮,有效性和閏年等問題.....

對于日期的有效范圍,不同的應用場景會有所不同。MSDN中定義的DateTime對象的有效范圍是:0001-01-01 00:00:00到9999-12-31 23:59:59。

UNIX時間戳的0按照ISO 8601規范為 :1970-01-01T00:00:00Z。

先考慮與年份無關的前三條規則,年份可統一寫作

(?!0000)[0-9]{4}

下面僅考慮月和日的正則

1. 包括平年在內的所有年份的月份都包含1-28日

(0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-8])

2. 包括平年在內的所有年份除2月外都包含29和30日

(0[13-9]|1[0-2])-(29|30)

3. 包括平年在內的所有年份1、3、5、7、8、10、12月都包含31日

(0[13578]|1[02])-31)

合起來就是除閏年的2月29日外的其它所有日期

(?!0000)[0-9]{4}-((0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-8])|(0[13-9]|1[0-2])-(29|30)|(0[13578]|1[02])-31)

接下來考慮閏年的實現

1 : 四年一閏
([0-9]{2}(0[48]|[2468][048]|[13579][26])

2 : 百年不閏,四百年再閏
(0[48]|[2468][048]|[13579][26])00

3 : 合起來就是所有閏年的2月29日
([0-9]{2}(0[48]|[2468][048]|[13579][26])|(0[48]|[2468][048]|[13579][26])00)-02-29)

四條規則都已實現,且互相間沒有影響,合起來就是所有符合DateTime范圍的日期的正則

^((?!0000)[0-9]{4}-((0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-8])|(0[13-9]|1[0-2])-(29|30)|(0[13578]|1[02])-31)|([0-9]{2}(0[48]|[2468][048]|[13579][26])|(0[48]|[2468][048]|[13579][26])00)-02-29)$

考慮到這個正則表達式僅僅是用作驗證,所以捕獲組沒有意義,只會占用資源,影響匹配效率,所以可以使用非捕獲組來進行優化。

^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$
分類: JavaScript

 


  js 日期正則表達式支持月日驗證
這款js 日期正則表達式支持月日驗證,我們會一一舉例說明一下有關日期驗證表達式的函數實例了.

function isdate(str){
var result=str.match(/^(d{4})(-|/)(d{1,2})2(d{1,2})$/);
if(result==null) return false;
var d=new Date(result[1], result[3]-1, result[4]);
return (d.getFullYear()==result[1] && d.getMonth()+1==result[3] && d.getDate()==result[4]);
}

檢查是否為 YYYY-MM-DD || YYYY/MM/DD 的日期格式


面僅考慮月和日的正則

1. 包括平年在內的所有年份的月份都包含1-28日

(0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-8])
2. 包括平年在內的所有年份除2月外都包含29和30日

(0[13-9]|1[0-2])-(29|30)
3. 包括平年在內的所有年份1、3、5、7、8、10、12月都包含31日

(0[13578]|1[02])-31)
合起來就是除閏年的2月29日外的其它所有日期

(?!0000)[0-9]{4}-((0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-8])|(0[13-9]|1[0-2])-(29|30)|(0[13578]|1[02])-31)
function isdatetime(str)
{
var result=str.match(/^(d{4})(-|/)(d{1,2})2(d{1,2}) (d{1,2}):(d{1,2}):(d{1,2})$/);
if(result==null) return false;
var d= new Date(result[1], result[3]-1, result[4], result[5], result[6], result[7]);
return (d.getFullYear()==result[1]&&(d.getMonth()+1)==result[3]&&d.getDate()==result[4]&&d.getHours()==result[5]&&d.getMinutes()==result[6]&&d.getSeconds()==result[7]);
}

// 判斷輸入是否是有效的長日期格式 - "YYYY-MM-DD HH:MM:SS" || "YYYY/MM/DD HH:MM:SS"


這是yyyy-mm-dd hh:mm:ss 的

/^(d{4})-(d{2})-(d{2}) (d{2}):(d{2}):(d{2})$/ ;

這是 yyyy-mm-ddde 的

/^(d{4})-(d{2})-(d{2})$/

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产亚洲欧美日韩精品| 久久精品成人一区二区三区| 日本三级久久久| 亚洲欧美精品一区| 久久国产精品99国产精| 亚洲欧美日韩中文在线制服| 精品国产一区二区三区久久狼5月| 日韩欧美国产骚| 日韩高清av一区二区三区| 国产欧美日韩专区发布| 97在线看福利| 成人亚洲欧美一区二区三区| 日韩欧美aaa| 97在线看免费观看视频在线观看| 精品偷拍各种wc美女嘘嘘| 欧美日韩福利电影| 成人免费福利视频| 精品美女国产在线| 久久久国产精彩视频美女艺术照福利| 午夜欧美大片免费观看| 精品国产欧美一区二区五十路| 亚洲第一视频在线观看| 欧美裸体视频网站| 韩国一区二区电影| 久久久国产精彩视频美女艺术照福利| 91免费看片网站| 日韩一区二区在线视频| 欧美激情在线有限公司| 欧美日韩日本国产| 国产精品视频一区二区高潮| 国产成人精品视频在线观看| 色yeye香蕉凹凸一区二区av| 久久久久久久久久久免费精品| 日本精品视频在线播放| 成人精品视频在线| 亚洲一区中文字幕在线观看| 亚洲第一免费网站| 日韩经典中文字幕| 亚洲最新av在线| 亚洲va男人天堂| 午夜精品视频在线| 国产精品久久久久aaaa九色| 国产精品视频中文字幕91| 伊人亚洲福利一区二区三区| 黑人巨大精品欧美一区免费视频| 欧美性猛交99久久久久99按摩| 欧美亚洲另类制服自拍| 亚洲国产天堂久久综合| 国产a∨精品一区二区三区不卡| 国产亚洲精品美女久久久久| 一本色道久久综合狠狠躁篇怎么玩| 在线成人一区二区| 日韩资源在线观看| 欧美日韩免费一区| 欧美另类极品videosbestfree| 欧美日韩国产一区二区| 91久久国产婷婷一区二区| 亚洲精品国产综合久久| 久久国产精品久久久久久久久久| 国产精品免费观看在线| 日韩有码在线电影| 欧美一级淫片videoshd| 国产一区二区三区毛片| 亚洲福利在线视频| 日韩电影免费在线观看中文字幕| 欧美激情乱人伦一区| 欧美一级bbbbb性bbbb喷潮片| 亚洲香蕉成人av网站在线观看| 国产精品www网站| www日韩中文字幕在线看| 亚洲成人精品av| 日本欧美国产在线| 日本午夜人人精品| 国产精品丝袜白浆摸在线| 国产精品黄视频| 欧美精品做受xxx性少妇| 日韩欧美中文字幕在线观看| 欧美三级免费观看| 日韩美女视频免费在线观看| 91大神福利视频在线| 国产精品v日韩精品| 俺去啦;欧美日韩| 久久国产加勒比精品无码| 午夜精品在线观看| 精品国产自在精品国产浪潮| 97精品伊人久久久大香线蕉| 91色视频在线导航| 国产精品视频yy9099| 国产91精品久久久| 国产美女精品免费电影| 最近中文字幕日韩精品| 亚洲国产成人精品女人久久久| 国产精品18久久久久久首页狼| 亚洲一区二区三区香蕉| 日韩一级黄色av| 色www亚洲国产张柏芝| 亚洲九九九在线观看| 日本亚洲欧美三级| 欧美资源在线观看| 美乳少妇欧美精品| 欧美大肥婆大肥bbbbb| 国产精品高潮在线| 国产日韩av在线| 欧美国产精品va在线观看| 成人情趣片在线观看免费| 国产偷亚洲偷欧美偷精品| 亚洲人成网站777色婷婷| 欧美精品久久一区二区| 日韩电影免费观看在线观看| 国产精品永久免费在线| 精品亚洲一区二区| 久久久久久噜噜噜久久久精品| 97视频免费观看| 久久亚洲精品成人| 久久最新资源网| 久久久www成人免费精品| 国产精品99蜜臀久久不卡二区| 久久久人成影片一区二区三区观看| 亚洲精品视频久久| 欧美另类交人妖| 26uuu另类亚洲欧美日本老年| 日韩激情视频在线| 欧美在线视频网| 欧美一区二区三区免费视| 亚洲一区二区三区视频播放| 91av在线国产| 中文日韩电影网站| 亚洲一级黄色av| 欧美成年人网站| 色综合伊人色综合网| 91在线|亚洲| 国产精品一香蕉国产线看观看| 国产美女直播视频一区| 国内精品美女av在线播放| 91chinesevideo永久地址| 日韩av大片在线| 大伊人狠狠躁夜夜躁av一区| 国产区精品视频| 一区二区三区www| 亚洲精品电影网站| 久久免费视频这里只有精品| 成人免费网站在线观看| 久久免费视频观看| 一区二区三区回区在观看免费视频| 91精品国产自产在线老师啪| 精品国偷自产在线视频99| 亚洲欧美激情另类校园| 久久亚洲综合国产精品99麻豆精品福利| 7m第一福利500精品视频| 亚洲另类xxxx| 红桃视频成人在线观看| 久久精品久久久久| 亚洲偷欧美偷国内偷| 国产精品专区一| 91免费人成网站在线观看18| 久久精品一本久久99精品| 亚洲欧美日韩精品久久奇米色影视| 欧美成人在线免费视频| 欧美色xxxx| 精品magnet| 久久久久久久久久久亚洲| 国产大片精品免费永久看nba| 久久99青青精品免费观看| 91在线视频一区|