zoukankan      html  css  js  c++  java
  • 正则表达式 日期

    Title:   Pattern   Title   [Details]   [Test]      
      Expression:   ^(3[0-1]|2[0-9]|1[0-9]|0[1-9])["s{1}|"/|-](Jan|JAN|Feb|FEB|Mar|MAR|Apr|APR|May|MAY|Jun|JUN|Jul|JUL|Aug|AUG|Sep|SEP|Oct|OCT|Nov|NOV|Dec|DEC)["s{1}|"/|-]"d{4}$      
           
      Description:   More   flexible   date   validator.   Allows   either   spaces,   /   or   -   as   dividers,   also   allows   for   fully   uppercase   months,   year   as   4   digit.    
      Matches:   01   JAN   2003|||31/Dec/2002|||20-Apr-2003    
      Non-Matches:   32   Jan   2003|||00   Dec   2003|||10   dec   2003    
           
      Author:   Ian   Wallace   Rating:   Not   yet   rated.      
         
      Title:   MMM   dd,   yyyy   Date   [Details]   [Test]      
      Expression:   ^(?:(((Jan(uary)?|Ma(r(ch)?|y)|Jul(y)?|Aug(ust)?|Oct(ober)?|Dec(ember)?)"   31)|((Jan(uary)?|Ma(r(ch)?|y)|Apr(il)?|Ju((ly?)|(ne?))|Aug(ust)?|Oct(ober)?|(Sept|Nov|Dec)(ember)?)"   (0?[1-9]|([12]"d)|30))|(Feb(ruary)?"   (0?[1-9]|1"d|2[0-8]|(29(?=,"   ((1[6-9]|[2-9]"d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)))))))","   ((1[6-9]|[2-9]"d)"d{2}))      
           
      Description:   This   RE   validate   Dates   in   the   MMM   dd,   yyyy   format   from   Jan   1,   1600   to   Dec   31,   9999.   The   format   is   as   follows:   The   name   or   3   letter   abbreivation,   without   a   period,   of   the   month,   then   a   space   then   the   day   value   then   a   comma   then   a   space   finally   the   year.   The   correct   number   of   day   are   validated   for   each   month   include   leap   years.   The   name   of   month   is   case   sensitive.    
      Matches:   Jan   1,   2003|||February   29,   2004|||November   02,   3202    
      Non-Matches:   Feb   29,   2003|||Apr   31,   1978|||jan   33,3333    
           
      Author:   Michael   Ash   Rating:        
         
      Title:   dd   MMM   yyyy   Date   [Details]   [Test]      
      Expression:   ^((31(?!"   (Feb(ruary)?|Apr(il)?|June?|(Sep(?="b|t)t?|Nov)(ember)?)))|((30|29)(?!"   Feb(ruary)?))|(29(?="   Feb(ruary)?"   (((1[6-9]|[2-9]"d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)))))|(0?[1-9])|1"d|2[0-8])"   (Jan(uary)?|Feb(ruary)?|Ma(r(ch)?|y)|Apr(il)?|Ju((ly?)|(ne?))|Aug(ust)?|Oct(ober)?|(Sep(?="b|t)t?|Nov|Dec)(ember)?)"   ((1[6-9]|[2-9]"d)"d{2})$      
           
      Description:   This   RE   validates   dates   in   the   dd   MMM   yyyy   format.   Spaces   separate   the   values.    
      Matches:   31   January   2003|||29   March   2004|||29   Feb   2008    
      Non-Matches:   Jan   1   2003|||31   Sept   2003|||29   February   2003    
           
      Author:   Michael   Ash   Rating:        
         
      Title:   Months   [Details]   [Test]      
      Expression:   ^(?:J(anuary|u(ne|ly))|February|Ma(rch|y)|A(pril|ugust)|(((Sept|Nov|Dec)em)|Octo)ber)$      
           
      Description:   This   RE   validate   the   full   name   of   the   months.    
      Matches:   January|||May|||October    
      Non-Matches:   Jan|||Septem|||Octo    
           
      Author:   Michael   Ash   Rating:        
         
      Title:   Pattern   Title   [Details]   [Test]      
      Expression:   ^(?<From>(JANUARY|FEBRUARY|MARCH|APRIL|MAY|JUNE|JULY|AUGUST|SEPTEMBER|OCTOBER|NOVEMBER|DECEMBER|[   ]|,|/|[0-9])+)(-|–|:|TO)?(?<To>(JANUARY|FEBRUARY|MARCH|APRIL|MAY|JUNE|JULY|AUGUST|SEPTEMBER|OCTOBER|NOVEMBER|DECEMBER|[   ]|,|/|[0-9]|PRESENT)+)+(:)*      
           
      Description:   This   regular   expression   will   match   date   given   in   any   format   expcept   (mmm).   Its   speciality   is   that   it   divides   dates   into   <from>   part   and   <to>   part.   Use   Groups   to   access   these   parts.   e.g.   JANUARY   1998   TO   JUNE   2000   <From>="JANUARY   1998"   <to>="JUNE   2000"      
      Matches:   JANUARY   2000|||19-01-2000|||12/11/2000    
      Non-Matches:   "Hello   it   is   ordinary   text"|||"non   -date   text"    
           
      Author:   Manpreet   Grewal   Rating:        
         
      Title:   Pattern   Title   [Details]   [Test]      
      Expression:   (?n:^(?="d)((?<month>(0?[13578])|1[02]|(0?[469]|11)(?!.31)|0?2(?(.29)(?=.29.((1[6-9]|[2-9]"d)(0[48]|[2468][048]|[13579][26])|(16|[2468][048]|[3579][26])00))|(?!.3[01])))(?<sep>[-./])(?<day>0?[1-9]|[12]"d|3[01])"k<sep>(?<year>(1[6-9]|[2-9]"d)"d{2})(?(?="x20"d)"x20|$))?(?<time>((0?[1-9]|1[012])(:[0-5]"d){0,2}(?i:"x20[AP]M))|([01]"d|2[0-3])(:[0-5]"d){1,2})?$)      
           
      Description:   New   DateTime   Regex.   Rebuilt   better   than   before,   better,   stronger,   faster.   Please   see   comments   below.   This   regex   will   validate   a   date,   time   or   a   datetime.   It   will   also   capture   the   date   fields   and   the   time.   Dates   are   in   the   MM/DD/YYYY   format   and   validated   for   months,   number   of   days   in   a   month   and   leap   years   (2/29)   Month   and   day   field   less   than   10   may   have   a   leading   0.   Years   are   4   digits.   Range   1600-9999   Date   field   can   be   separted   by   matched   periods(.),   dashes(-)   or   forward   slashes(/).   Time   is   either   12   hour   AM/PM   format   (HH:mm:ss   AM),   where   minutes   and   seconds   are   optional.   AM   or   PM   required.   or   24   hour   military   format   (HH:mm:SS),   from   00:00:00   to   23:59:59,   where   hours   and   minutes   fields   are   required,   including   leading   0   for   hours   less   than   10.   Datetime   is   the   above   date   and   time   formats   separated   by   a   space,   with   the   date   first   (MM/DD/YYYY   HH:mm:SS)   !IMPORTANT   NOTE:   your   regex   engine   must   support   lookaheads   and   named   groups   to   use   this   expression   Also   this   version   allow   for   capture   of   the   date   parts   which   you   can   then   use   in   your   code   month   =   "1   sep   =   "2   day   =   "3   year   =   "4   time   =   "5    
      Matches:   1/31/2002   10   AM|||2/29/2004|||4:15:04   PM    
      Non-Matches:   2/29/2003|||12/32/2003|||4:00    
           
      Author:   Michael   Ash   Rating:        
         
      Title:   Pattern   Title   [Details]   [Test]      
      Expression:   (?n:^(?="d)((?<day>31(?!(.0?[2469]|11))|30(?!.0?2)|29(?(.0?2)(?=.{3,4}(1[6-9]|[2-9]"d)(0[48]|[2468][048]|[13579][26])|(16|[2468][048]|[3579][26])00))|0?[1-9]|1"d|2[0-8])(?<sep>[/.-])(?<month>0?[1-9]|1[012])"2(?<year>(1[6-9]|[2-9]"d)"d{2})(?:(?="x20"d)"x20|$))?(?<time>((0?[1-9]|1[012])(:[0-5]"d){0,2}(?i:"   [AP]M))|([01]"d|2[0-3])(:[0-5]"d){1,2})?$)      
           
      Description:   DD/MM/YYYY   format   New   DateTime   Regex.   Rebuilt   better   than   before,   better,   stronger,   faster.   This   regex   will   validate   a   date,   time   or   a   datetime.   It   will   also   capture   the   date   fields   and   the   time.   Dates   are   in   the   DD/MM/YYYY   format   and   validated   for   months,   number   of   days   in   a   month   and   leap   years   (29/2)   Date   field   can   be   separated   by   matched   periods(.),   dashes(-)   or   forward   slashes(/).   Year   range   1600-9999   Time   is   either   12   hour   AM/PM   format   (HH:mm:ss   AM),   where   minutes   and   seconds   are   optional.   AM   or   PM   required.   or   24   hour   military   format   (HH:mm:SS),   from   00:00:00   to   23:59:59,   where   hours   and   minutes   fields   are   required,   including   leading   0   for   hours   less   than   10.   Datetime   is   the   above   date   and   time   formats   separated   by   a   space,   with   the   date   first   (DD/MM/YYYY   HH:mm:SS)   !IMPORTANT   NOTE:   your   regex   engine   must   support   lookaheads   and   named   groups   to   use   this   expression    
      Matches:   31/12/2003|||29/2/2004   4:50   PM|||23:59:59    
      Non-Matches:   12/31/2003|||29/2/2003|||4:00    
           
      Author:   Michael   Ash   Rating:        
         
      Title:   Pattern   Title   [Details]   [Test]      
      Expression:   ^(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)",*"s"s*"d{4}$|^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)",*"s"d{4}$|^(January|February|March|April|May|June|July|August|September|October|November|December)",*"s"d{4}$|^(january|february|march|april|may|june|july|august|september|october|november|december)",*"s"d{4}$      
           
      Description:   Best   Use   validation   to   accept   a   valid   "MonthName(,)   Year".   It   can   validate   an   entry   with   or   without   comma   (,).      
      Matches:   January   2004|||Jan,   2004|||january   2003    
      Non-Matches:   Janu   2004|||jAn,   2004|||January,2003    
           
      Author:   Elmer   Cadelina   Rating:   Not   yet   rated.      
         
      Title:   Pattern   Title   [Details]   [Test]      
      Expression:   ^([0-9]{2})(00[1-9]|0[1-9][0-9]|[1-2][0-9][0-9]|3[0-5][0-9]|36[0-6])$      
           
      Description:   Matches   a   Julian   date   in   the   format   YYDDD.   Two   digit   year   followed   by   a   number   from   1   -   366   indicating   the   day   of   the   year.    
      Matches:   99366|||00001    
      Non-Matches:   74000|||04367    
           
      Author:   Brian   James   Rating:   Not   yet   rated.      
         
      Title:   Pattern   Title   [Details]   [Test]      
      Expression:   ^((31(?!   (FEB|APR|JUN|SEP|NOV)))|((30|29)(?!   FEB))|(29(?=   FEB   (((1[6-9]|[2-9]"d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)))))|(0?[1-9])|1"d|2[0-8])   (JAN|FEB|MAR|MAY|APR|JUL|JUN|AUG|OCT|SEP|NOV|DEC)   ((1[6-9]|[2-9]"d)"d{2})$      
           
      Description:   Validates   date   format   by   DD   MMM   YYYY.   Validates   days   for   each   month   also.   Ensures   that   month   is   uppercase.    
      Matches:   09   MAY   1981|||28   JAN   2004|||8   JUL   2006    
      Non-Matches:   29   FEB   2003|||28   Oct   2000|||9   APR   03    

         

    Title:   Pattern   Title   [Details]   [Test]      
      Expression:   ^"d{1,2}"/"d{1,2}"/"d{4}$      
           
      Description:   This   regular   expressions   matches   dates   of   the   form   XX/XX/YYYY   where   XX   can   be   1   or   2   digits   long   and   YYYY   is   always   4   digits   long.    
      Matches:   4/1/2001|||12/12/2001|||55/5/3434    
      Non-Matches:   1/1/01|||12   Jan   01|||1-1-2001    
           
      Author:   Steven   Smith   Rating:        
         
      Title:   Pattern   Title   [Details]   [Test]      
      Expression:   ^(([0-2]"d|[3][0-1])"/([0]"d|[1][0-2])"/[2][0]"d{2})$|^(([0-2]"d|[3][0-1])"/([0]"d|[1][0-2])"/[2][0]"d{2}"s([0-1]"d|[2][0-3])":[0-5]"d":[0-5]"d)$      
           
      Description:   Correct   French   DateTime(DD/MM/YYYY   OR   DD/MM/YYYY   HH:MM:SS)    
      Matches:   12/01/2002|||12/01/2002   12:32:10    
      Non-Matches:   32/12/2002|||12/13/2001|||12/02/06    
           
      Author:   Samir   AZZA   Rating:        
         
      Title:   Pattern   Title   [Details]   [Test]      
      Expression:   ^(((((0[13578])|([13578])|(1[02]))["-"/"s]?((0[1-9])|([1-9])|([1-2][0-9])|(3[01])))|((([469])|(11))["-"/"s]?((0[1-9])|([1-9])|([1-2][0-9])|(30)))|((02|2)["-"/"s]?((0[1-9])|([1-9])|([1-2][0-9]))))["-"/"s]?"d{4})("s(((0[1-9])|([1-9])|(1[0-2]))":([0-5][0-9])(("s)|(":([0-5][0-9])"s))([AM|PM|am|pm]{2,2})))?$      
           
      Description:   Following   expression   can   be   used   to   validate   a   datetime   column   from   SQL   Server.   This   expression   is   an   enhanced   version   of   Scott   Watermasysk's   date/time   submission.   It   now   accepts   leading   zeros   in   months,   days,   and   hours.   In   addition,   this   expression   properly   handles   the   11th   hour.   Watermasysk's   would   take   the   10th   and   12th   hour   but   not   the   11th.   This   regex   has   been   tweaked   to   do   so.   Does   not   handle   the   February   29th   problem   on   non-leap   years   yet.   Will   learn   a   little   more   about   RegEx   and   do   so   in   later   submission.      
      Matches:   11/30/2003   10:12:24   am|||2/29/2003   08:14:56   pm|||5/22/2003    
      Non-Matches:   11/31/2003   10:12:24   am|||2/30/2003   08:14:56   pm|||5/22/2003   14:15    
           
      Author:   David   Darling   Rating:        
         
      Title:   Pattern   Title   [Details]   [Test]      
      Expression:   ^["w-".]+@(["w-]+".)+["w-]{2,3}$      
           
      Description:   For   Date   format   MM-JJ-YYYY   validation      
      Matches:   umtsfr@free.fr|||123@dz.com|||regexlib@regexlib.fr    
      Non-Matches:   umtsfr@free|||umtsfrfree.fr|||@free.fr    
           
      Author:   Hakim   SALHI   Rating:   Not   yet   rated.      
         
      Title:   DateTime   M/d/y   hh:mm:ss   [Details]   [Test]      
      Expression:   ^(?="d)(?:(?:(?:(?:(?:0?[13578]|1[02])("/|-|".)31)"1|(?:(?:0?[1,3-9]|1[0-2])("/|-|".)(?:29|30)"2))(?:(?:1[6-9]|[2-9]"d)?"d{2})|(?:0?2("/|-|".)29"3(?:(?:(?:1[6-9]|[2-9]"d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))|(?:(?:0?[1-9])|(?:1[0-2]))("/|-|".)(?:0?[1-9]|1"d|2[0-8])"4(?:(?:1[6-9]|[2-9]"d)?"d{2}))($|"   (?="d)))?(((0?[1-9]|1[012])(:[0-5]"d){0,2}("   [AP]M))|([01]"d|2[0-3])(:[0-5]"d){1,2})?$      
           
      Description:   DateTime   Validator.      
      Matches:   12/25/2003|||08:03:31|||02/29/2004   12   AM    
      Non-Matches:   02/29/2003   1:34   PM|||13:23   PM|||24:00:00    
           
      Author:   Michael   Ash   Rating:        
         
      Title:   Time   [Details]   [Test]      
      Expression:   ^((0?[1-9]|1[012])(:[0-5]"d){0,2}("   [AP]M))$|^([01]"d|2[0-3])      
           
      Description:   This   RE   validates   times   patterns.    
      Matches:   1   AM|||23:00:00|||5:29:59   PM    
      Non-Matches:   13   PM|||13:60:00|||00:00:00   AM    
           
      Author:   Michael   Ash   Rating:        
         
      Title:   Pattern   Title   [Details]   [Test]      
      Expression:   (((0[1-9]|[12][0-9]|3[01])([/])(0[13578]|10|12)([/])("d{4}))|(([0][1-9]|[12][0-9]|30)([/])(0[469]|11)([/])("d{4}))|((0[1-9]|1[0-9]|2[0-8])([/])(02)([/])("d{4}))|((29)(".|-|"/)(02)([/])([02468][048]00))|((29)([/])(02)([/])([13579][26]00))|((29)([/])(02)([/])([0-9][0-9][0][48]))|((29)([/])(02)([/])([0-9][0-9][2468][048]))|((29)([/])(02)([/])([0-9][0-9][13579][26])))      
           
      Description:   Date   in   DD/MM/YYYY   format.   Fecha   en   formato   DD/MM/AAAA.    
      Matches:   28/12/2003|||28/02/2003|||29/02/2000    
      Non-Matches:   28-02-2003|||30/02/2003|||28.02.2003    
           
      Author:   Mathews   Inga   Rating:        
         
      Title:   Pattern   Title   [Details]   [Test]      
      Expression:   ^((((((0?[13578])|(1[02]))["-"/"s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))["-"/"s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2["-"/"s]?((0?[1-9])|([1-2][0-9]))))["-"/"s]?"d{2}(([02468][048])|([13579][26])))|(((((0?[13578])|(1[02]))["-"/"s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))["-"/"s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2["-"/"s]?((0?[1-9])|(1[0-9])|(2[0-8]))))["-"/"s]?"d{2}(([02468][1235679])|([13579][01345789]))))("s(((0?[1-9])|(1[0-2]))":([0-5][0-9])(("s)|(":([0-5][0-9])"s))([AM|PM|am|pm]{2,2})))?$      
           
      Description:   This   regex   will   match   SQL   Server   datetime   values,   allowing   date   only,   allowing   zero   padded   digits   in   month,   day   and   hour,   and   will   match   leap   years   from   1901   up   until   2099.    
      Matches:   2/29/2004|||04/01/2003   10:01:23   am|||03-20-1999    
      Non-Matches:   2/29/2003|||13/30/2001   10:05:00   pm|||12/32/2003    
           
      Author:   Sung   Lee   Rating:        
         
      Title:   Pattern   Title   [Details]   [Test]      
      Expression:   ^(("d{2}(([02468][048])|([13579][26]))["-"/"s]?((((0?[13578])|(1[02]))["-"/"s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))["-"/"s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2["-"/"s]?((0?[1-9])|([1-2][0-9])))))|("d{2}(([02468][1235679])|([13579][01345789]))["-"/"s]?((((0?[13578])|(1[02]))["-"/"s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))["-"/"s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2["-"/"s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))("s(((0?[1-9])|(1[0-2]))":([0-5][0-9])(("s)|(":([0-5][0-9])"s))([AM|PM|am|pm]{2,2})))?$      
           
      Description:   Matches   ANSI   SQL   date   format   YYYY-mm-dd   hh:mi:ss   am/pm.   You   can   use   /   -   or   space   for   date   delimiters,   so   2004-12-31   works   just   as   well   as   2004/12/31.   Checks   leap   year   from   1901   to   2099.    
      Matches:   2004-2-29|||2004-02-29   10:29:39   pm|||2004/12/31    
      Non-Matches:   2003-2-29|||2003-13-02|||2003-2-2   10:72:30   am    
           
      Author:   Sung   Lee   Rating:        
         
      Title:   Pattern   Title   [Details]   [Test]      
      Expression:   ^(([0]?[1-9]|1[0-2])/([0-2]?[0-9]|3[0-1])/[1-2]"d{3})?   ?((([0-1]?"d)|(2[0-3])):[0-5]"d)?(:[0-5]"d)?   ?(AM|am|PM|pm)?$      
           
      Description:   Matches   variations   on   date/time/AM-PM.   Must   have   4   digit   year,   but   everything   else   is   open.   Restrictions   are:   4   digit   year,   months   1-12,   hours   1-23,   minutes   and   seconds   1-59,   any   case   of   AM   and   PM.   If   this   don't   woik,   I   wrote   it,   lemmy   know.    
      Matches:   12/30/2002|||12/30/2002   9:35   pm|||12/30/2002   19:35:02    
      Non-Matches:   18/22/2003|||8/12/99|||8/22/2003   25:00    
           
      Author:   Michael   Gaertner   Rating:   Not   yet   rated.     
     

  • 相关阅读:
    【设计模式】 五大原则
    RFC
    Linux虚拟服务器--LVS
    Git fast forward提交
    Fighting regressions with git bisect---within git bisect algorithm
    Git bare repo with multiple branches
    英特尔和Red Hat合作实现Gnome桌面的Wayland支持
    如何成为一个Linux内核开发者
    Terminal emulator
    bootstrap基础学习【网格系统】(三)
  • 原文地址:https://www.cnblogs.com/aloha/p/1399652.html
Copyright © 2011-2022 走看看