Displaying page
of
 pages;
Items  to 
    
    
            
                
                    | Title | Test
                        Details
                        
                        
                            A.D. Calendar dates | 
                
                    | Expression | 
                            (?#Calandar from January 1st 1 A.D to December 31, 9999 )(?# in yyyy-mm-dd format )(?!(?:1582\D10\D(?:0?[5-9]|1[0-4]))|(?#Missing days from 1582 )(?:1752\D0?9\D(?:0?[3-9]|1[0-3]))(?#or Missing days from 1752 )(?# both sets of missing days should not be in the same calendar so remove one or the other))(?n:^(?=\d)(?# the character at the beginning a the string must be a digit )((?'year'\d{4})(?'sep'[-./])(?'month'0?[1-9]|1[012])\k'sep'(?'day'(?<!(?:0?[469]|11).)31|(?<!0?2.)30|2[0-8]|1\d|0?[1-9]|(?# if feb 29th check for valid leap year )(?:(?<=(?!(?#exclude these years from leap year pattern ) 000[04](?#No year 0 and no leap year in year 4 )|(?:(?:1[^0-6]|[2468][^048]|[3579][^26])00)(?# centurial years > 1500 not evenly divisible by 400 are not leap year))(?:(?:\d\d)(?# century)(?:[02468][048]|[13579][26])(?#leap years))\k'sep'(?:0?2)\k'sep')|(?# else if not Feb 29 )(?<!\k'sep'(?:0?2)\k'sep')(?# and day not Feb 30 or 31 ))29)(?(?=\x20\d)\x20|$))?(?# if there is a space followed by a digit check for time )(?<time>((?# 12 hour format )(0?[1-9]|1[012])(?# hours )(:[0-5]\d){0,2}(?# optional minutes and seconds )(?i:\x20[AP]M)(?# required AM or PM ))|(?# 24 hour format )([01]\d|2[0-3])(?#hours )(:[0-5]\d){1,2})(?#required minutes optional seconds )?$)
                         | 
                
                    | Description | yyyy-mm-dd Datetime for AD, with leap year. See http://blogs.regexadvice.com/mash/archive/2004/04/23/1021.aspx for details on similar regexs | 
                
                    | Matches | 0001-06-16 12:00:01 AM | 2004/2/29 | 3:30 PM | 
                
                    | Non-Matches | 9999/99/99 | 24:00:00 | 2003-02-29 | 
                
                    | Author | Rating:  Michael Ash | 
            
        
            
                
                    | Title | Test
                        Details
                        
                        
                            Pattern Title | 
                
                    | Expression | 
                            (?=\d)^(?:(?!(?:10\D(?:0?[5-9]|1[0-4])\D(?:1582))|(?:0?9\D(?:0?[3-9]|1[0-3])\D(?:1752)))((?:0?[13578]|1[02])|(?:0?[469]|11)(?!\/31)(?!-31)(?!\.31)|(?:0?2(?=.?(?:(?:29.(?!000[04]|(?:(?:1[^0-6]|[2468][^048]|[3579][^26])00))(?:(?:(?:\d\d)(?:[02468][048]|[13579][26])(?!\x20BC))|(?:00(?:42|3[0369]|2[147]|1[258]|09)\x20BC))))))|(?:0?2(?=.(?:(?:\d\D)|(?:[01]\d)|(?:2[0-8])))))([-.\/])(0?[1-9]|[12]\d|3[01])\2(?!0000)((?=(?:00(?:4[0-5]|[0-3]?\d)\x20BC)|(?:\d{4}(?!\x20BC)))\d{4}(?:\x20BC)?)(?:$|(?=\x20\d)\x20))?((?:(?:0?[1-9]|1[012])(?::[0-5]\d){0,2}(?:\x20[aApP][mM]))|(?:[01]\d|2[0-3])(?::[0-5]\d){1,2})?$
                         | 
                
                    | Description | mm/dd/yyyy hh:MM:ss Datetime for all AD years, including leap years.
Javascript safe version of http://regexlib.com/REDetails.aspx?regexp_id=644.  Please see that regex for details of what is being checked | 
                
                    | Matches | 11/24/0004 11:59 PM | 2.29.2008 | 02:50:10 | 
                
                    | Non-Matches | 12/33/1020 | 2/29/2005 | 13:00 AM | 
                
                    | Author | Rating:  Michael Ash | 
            
        
            
                
                    | Title | Test
                        Details
                        
                        
                            Pattern Title | 
                
                    | Expression | 
                            ^(?=\d)(?:(?!(?:(?:0?[5-9]|1[0-4])(?:\.|-|\/)10(?:\.|-|\/)(?:1582))|(?:(?:0?[3-9]|1[0-3])(?:\.|-|\/)0?9(?:\.|-|\/)(?:1752)))(31(?!(?:\.|-|\/)(?:0?[2469]|11))|30(?!(?:\.|-|\/)0?2)|(?:29(?:(?!(?:\.|-|\/)0?2(?:\.|-|\/))|(?=\D0?2\D(?:(?!000[04]|(?:(?:1[^0-6]|[2468][^048]|[3579][^26])00))(?:(?:(?:\d\d)(?:[02468][048]|[13579][26])(?!\x20BC))|(?:00(?:42|3[0369]|2[147]|1[258]|09)\x20BC))))))|2[0-8]|1\d|0?[1-9])([-.\/])(1[012]|(?:0?[1-9]))\2((?=(?:00(?:4[0-5]|[0-3]?\d)\x20BC)|(?:\d{4}(?:$|(?=\x20\d)\x20)))\d{4}(?:\x20BC)?)(?:$|(?=\x20\d)\x20))?((?:(?:0?[1-9]|1[012])(?::[0-5]\d){0,2}(?:\x20[aApP][mM]))|(?:[01]\d|2[0-3])(?::[0-5]\d){1,2})?$
                         | 
                
                    | Description | dd/mm/yyyy hh:MM:ss Datetime for all AD years, including leap years.
Javascript safe version of http://regexlib.com/REDetails.aspx?regexp_id=691.  Please see that regex for details of what is being checked | 
                
                    | Matches | 31.12.6008 | 5:30 AM | 30-04-1066 | 
                
                    | Non-Matches | 00/00/0000 | 99:99:99 | 29/02/2005 | 
                
                    | Author | Rating:  Michael Ash | 
            
        
            
            
        
            
                
                    | Title | Test
                        Details
                        
                        
                            Pattern Title | 
                
                    | Expression | 
                            ^(?=\d)(?:(?!(?:1582(?:\.|-|\/)10(?:\.|-|\/)(?:0?[5-9]|1[0-4]))|(?:1752(?:\.|-|\/)0?9(?:\.|-|\/)(?:0?[3-9]|1[0-3])))(?=(?:(?!000[04]|(?:(?:1[^0-6]|[2468][^048]|[3579][^26])00))(?:(?:\d\d)(?:[02468][048]|[13579][26]))\D0?2\D29)|(?:\d{4}\D(?!(?:0?[2469]|11)\D31)(?!0?2(?:\.|-|\/)(?:29|30))))(\d{4})([-\/.])(0?\d|1[012])\2((?!00)[012]?\d|3[01])(?:$|(?=\x20\d)\x20))?((?:(?:0?[1-9]|1[012])(?::[0-5]\d){0,2}(?:\x20[aApP][mM]))|(?:[01]\d|2[0-3])(?::[0-5]\d){1,2})?$
                         | 
                
                    | Description | yyyy/mm/dd hh:MM:ss Datetime for all AD years, including leap years.
Javascript safe version of http://regexlib.com/REDetails.aspx?regexp_id=760.  Please see that regex for details of what is being checked | 
                
                    | Matches | 0008-02-29 | 2:34:59 PM | 9999/12/31 11:59 PM | 
                
                    | Non-Matches | 04/04/04 | 1:00 | 1999/1/32 | 
                
                    | Author | Rating:  Michael Ash | 
            
        
            
                
                    | Title | Test
                        Details
                        
                        
                            Pattern Title | 
                
                    | Expression | 
                            ^((?:[a-zA-Z]:)|(?:\\{2}\w[-\w]*)\$?)\\(?!\.)((?:(?![\\/:*?<>"|])(?)[\x20-\x7E])+\\(?!\.))*((?:(?:(?![\\/:*?<>"|])(?![ .]$)[\x20-\x7E])+)\.((?:(?![\\/:*?<>"|])(?![ .]$)[\x20-\x7E]){2,15}))?$
                         | 
                
                    | Description | Matches drives, folders and file on a Windows OS. Folder matches must end with \
Folder and file names can not end with a space.
I limited the file extension length to 15  though that not a restriction of a file's extension 
This is a mod of Darren's regex http://www.regexlib.com/REDetails.aspx?regexp_id=357
and my own http://www.regexlib.com/REDetails.aspx?regexp_id=137
Updated Feb 2005 | 
                
                    | Matches | C:\ | \\Server\share\path\File.txt | E:\My Files\Are\#1\ | 
                
                    | Non-Matches | C: | C:\\\ | C:\Trailing Space \ | 
                
                    | Author | Rating:
                            
Not yet rated.
                        
                            Michael Ash | 
            
        
            
                
                    | Title | Test
                        Details
                        
                        
                            Pattern Title | 
                
                    | Expression | 
                            \b-?[1-9](?:\.\d+)?[Ee][-+]?\d+\b
                         | 
                
                    | Description | Matches standard scientific notation using E character
Scientific notation involves writing a number as the product of two numbers. The first one, the digit value, is always more than one and less than 10. The other, the exponential term, is expressed as a power of 10. | 
                
                    | Matches | 3.7E-11 | -2.384E-03 | 9.4608e15 | 
                
                    | Non-Matches | 3.7 X 10-11 | -23.84E-02 | 9.4608 x 1015 | 
                
                    | Author | Rating:
                            
Not yet rated.
                        
                            Michael Ash | 
            
        
            
            
        
            
                
                    | Title | Test
                        Details
                        
                        
                            Pattern Title | 
                
                    | Expression | 
                            (?![\uD800-\uDBFF])(?![\uDC00-\uDFFF])[\u0080-\uFFFF]
                         | 
                
                    | Description | Unicode Plane 0 character excluding standard ASCII  | 
                
                    | Matches | © | S | ? | 
                
                    | Non-Matches | A | ?? | 4 | 
                
                    | Author | Rating:
                            
Not yet rated.
                        
                            Michael Ash | 
            
        
            
                
                    | Title | Test
                        Details
                        
                        
                            Pattern Title | 
                
                    | Expression | 
                            [\uD800-\uDBFF][\uDC00-\uDFFF]
                         | 
                
                    | Description | Non-Plane 0 Unicode character
 | 
                
                    | Matches | ?? | ?? | ?? | 
                
                    | Non-Matches | A | v | ? | 
                
                    | Author | Rating:
                            
Not yet rated.
                        
                            Michael Ash | 
            
        
            
                
                    | Title | Test
                        Details
                        
                        
                            Pattern Title | 
                
                    | Expression | 
                            (\S+)\x20{2,}(?=\S+)
                         | 
                
                    | Description | Trim Inside.  This pattern can be used with a replace value of "$1 " to remove multiple consecutive spaces between characters and replace with a single space. Trailing and leading spaces are NOT altered. | 
                
                    | Matches | Too          Many            spaces. | 
                
                    | Non-Matches | No extra spaces | No Extra spaces Inside | 
                
                    | Author | Rating:
                            
Not yet rated.
                        
                            Michael Ash | 
            
        
            
                
                    | Title | Test
                        Details
                        
                        
                            Word Break | 
                
                    | Expression | 
                            ^(?:[ -~]{10,25}(?:$|(?:[\w!?.])\s))
                         | 
                
                    | Description | Word Break.  This regex can be used to break a long line of text on a full word. The qualifiers specify the minimum and maximum number of character allow before the break and can be changed according to your need. Blogge about this here http://regexadvice.com/blogs/mash/archive/2005/02/09/324.aspx | 
                
                    | Matches | This is just a simple sample | 
                
                    | Non-Matches | A sample | 
                
                    | Author | Rating:
                            
Not yet rated.
                        
                            Michael Ash | 
            
        
            
                
                    | Title | Test
                        Details
                        
                        
                            MM/dd/yyyy HH:mm:ss.fff  Datetime \w milliseconds | 
                
                    | 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)(?<time>(?<hours>[01]\d|2[0-3]):(?<minutes>[0-5]\d):(?<seconds>[0-5]\d)\.(?<milliseconds>\d{3}))$)
                         | 
                
                    | Description | Date-time with milliseconds. MM/dd/yyyy HH:mm:ss.fff Time is in military format and requires leading zeroes for single digit hours and seconds and two digit milliseconds. All fields are required. This was a special request modification of another regex. | 
                
                    | Matches | 05/4/2005 12:34:53.102 | 12/31/2096 23:59:59.999 | 
                
                    | Non-Matches | 05/4/2005 | 12:34:53.102 | 
                
                    | Author | Rating:
                            
Not yet rated.
                        
                            Michael Ash | 
            
        
            
                
                    | Title | Test
                        Details
                        
                        
                            ISBNs | 
                
                    | Expression | 
                            ISBN(-1(?:(0)|3))?:?\x20+(?(1)(?(2)(?:(?=.{13}$)\d{1,5}([ -])\d{1,7}\3\d{1,6}\3(?:\d|x)$)|(?:(?=.{17}$)97(?:8|9)([ -])\d{1,5}\4\d{1,7}\4\d{1,6}\4\d$))|(?(.{13}$)(?:\d{1,5}([ -])\d{1,7}\5\d{1,6}\5(?:\d|x)$)|(?:(?=.{17}$)97(?:8|9)([ -])\d{1,5}\6\d{1,7}\6\d{1,6}\6\d$)))
                         | 
                
                    | Description | This regex match both the old 10 digit ISBNs and the new 13 digit ISBNs.  The ISBN number must be prefixed by the literal text "ISBN:" or "ISBN-10:" or "ISBN-13:".  The colon is optional.  Naturally an ISBN prefixed by "ISBN-10" must be a 10 digit ISBN.  One prefixed by "ISBN-13" must be 13 digits.   If prefixed only by "ISBN:"  it can be either 10 or 13 digits.  This does not evaluate whether the check digit is valid for the given ISBN.  The structure of an ISBN is discribed here http://www.isbn.org/standards/home/isbn/international/html/usm4.htm (this is for 10 digit)   | 
                
                    | Matches | ISBN-13:  978-1-4028-9462-6 | 
                
                    | Non-Matches | ISBN: 1284233-2-1-1 | 
                
                    | Author | Rating:
                            
Not yet rated.
                        
                            Michael Ash | 
            
        
            
                
                    | Title | Test
                        Details
                        
                        
                            ISBN-13 | 
                
                    | Expression | 
                            ISBN(?:-13)?:?\x20*(?=.{17}$)97(?:8|9)([ -])\d{1,5}\1\d{1,7}\1\d{1,6}\1\d$
                         | 
                
                    | Description | This regex matches the new 13 digit ISBN.  The ISBN number must be preceded by the text "ISBN:" or "ISBN-13:" , the colon is optional. The proper lengthes of the ISBN elements is checked.  The is no check for the validity of the check digit. | 
                
                    | Matches | ISBN-13:  978-1-4028-9462-6 | 
                
                    | Non-Matches | ISBN-10:  1-4028-9462-7 | 
                
                    | Author | Rating:
                            
Not yet rated.
                        
                            Michael Ash | 
            
        
            
                
                    | Title | Test
                        Details
                        
                        
                            Multi-format date regex | 
                
                    | Expression | 
                            ^(?ni:(((?:((((((?<month>(?<monthname>(Jan(uary)?|Ma(r(ch)?|y)|Jul(y)?|Aug(ust)?|Oct(ober)?|Dec(ember)?)))\ )|(?<month>(?<monthnum>(0?[13578])|10)(?<sep>[-/.])))(?<day>31)(?(monthnum)|st)?)|((((?<month>(?<monthname>Jan(uary)?|Ma(r(ch)?|y)|Apr(il)?|Ju((ly?)|(ne?))|Aug(ust)?|Oct(ober)?|(Sept|Nov|Dec)(ember)?))\ )|((?<month>(?<monthnum>(0?[13-9])|1[012]))(?<sep>[-/.])))(?<day>((0?[1-9]|([12]\d)|30)|(?(monthname)(\b2?(1st|2nd|3rd|[4-9]th)|(2|3)0th|1\dth\b))))))|((((?<month>(?<monthname>Feb(ruary)?))\ )|((?<month>0?2)(?<sep>[-/.])))((?(monthname)(?<day>(\b2?(1st|2nd|3rd|[4-8]th)|9th|20th|1\dth\b)|(0?[1-9]|1\d|2[0-8])))|(?<day>29(?=(\k<sep>|(?(monthname)th)?,\ )((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)))))))(?(sep)\k<sep>|((?(monthname)th)?,\ ))(?<year>(1[6-9]|[2-9]\d)\d{2}))$|((?<days>(31(?<suffix>st)?(?!(\ (Feb(ruary)?|Apr(il)?|June?|(Sep(?=\b|t)t?|Nov)(ember)?))|[-/.](0?[2469]|11)))|((30|29)(?<suffix>th)?(?!((\ Feb(ruary)?)|([-/.]0?2))))|(29(?<suffix>th)?(?=((\ Feb(ruary)?\ )|([ -/.]0?2))(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)))))|(?<suffix>(?=\d\d?[nrst][dht]\ [JFMASOND])(\b2?(1st|2nd|3rd|[4-8]th)|20th|1\dth\b)|((0?[1-9])|1\d|2[0-8])))(?<month>(\ (?<monthname>(Jan(uary)?|Feb(ruary)?|Ma(r(ch)?|y)|Apr(il)?|Ju((ly?)|(ne?))|Aug(ust)?|Oct(ober)?|(Sep(?=\b|t)t?|Nov|Dec)(ember)?))\ )|(?(\k<suffix>)|((?<sep>[-/.])(0?[1-9]|1[012])\k<sep>)))(?<year>(1[6-9]|[2-9]\d)\d{2}))|\b((?<year>((1[6-9])|([2-9]\d))\d\d)(?<sep>[/.-])(?<month>0?[1-9]|1[012])\k<sep>(?<day>((?<!(\k<sep>((0?[2469])|11)\k<sep>))31)|(?<!\k<sep>(0?2)\k<sep>)(29|30)|((?<=((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|(16|[2468][048]|[3579][26])00)\k<sep>(0?2)\k<sep>)29)|((0?[1-9])|(1\d)|(2[0-8]))))\b)(?:(?=\x20\d)\x20|$))?((?<time>((0?[1-9]|1[012])(:[0-5]\d){0,2}(\x20[AP]M))|([01]\d|2[0-3])(:[0-5]\d){1,2}))?)$
                         | 
                
                    | Description | Another date regex. From year 1600-9999, days in month and leap year checks.  Formats include MM-dd-YYYY, dd-MM-yyyy, yyyy-MM-dd, MMM dd,yyyy or dd MMM yyyy. Years are always four digits,  months can be one or two digits, three letter abbreivation or full name.  Named months (non-digit) can have days with a suffix 1st, 2nd, etc. Numeric months must have a separtate between itself and the other date parts.  For Demo only: This was just a mental exercise don't use this for actual validation.  Used .Net regex engines advanced features for easier constuction. Use this website (or .net engine) to test. | 
                
                    | Matches | 1/1/1600  |  Jan 30th, 1902  |  29-02-2004  |  2000-31-12  |  5 PM | 
                
                    | Non-Matches | 12-32-2000  |  2/29/1999 | 
                
                    | Author | Rating:
                            
Not yet rated.
                        
                            Michael Ash | 
            
        
            
                
                    | Title | Test
                        Details
                        
                        
                            Number as English text | 
                
                    | Expression | 
                            \b(((((one|t((en)|(wo)|(hree)|(welve)|(hirteen))|(evelen)|(f((our)|(ive))|s((ix)|(even))|eight|nine)(teen)?))\b(\s+hundred\s*)?)| ((t((wen)|(hir))|f((or)|(if))|s((ix)|(even))|eigh|nin)ty)(-(one|t((wo)|(hree))|f((our)|(ive))|s((ix)|(even))|eight|nine))?) (\s*(hundred|thousand|((([mb]|(t|quad)r))illion))\s*(and\s+)?)?)+
                         | 
                
                    | Description | Match words in English that represent a number | 
                
                    | Matches | sixteen million six hundred thousand two hundred forty-seven | 
                
                    | Non-Matches | 16,600,247 | 
                
                    | Author | Rating:  Michael Ash | 
            
        
    
        
        
   Displaying page
of
 pages;
Items  to