Friday, February 19, 2010

Quick reference for regular expressions

Syntax:
Regex regex = new Regex(@"
^                   # anchor at the start
(?=.*\d)        # must contain at least one numeric character
(?=.*[a-z])    # must contain one lowercase character
(?=.*[A-Z])  # must contain one uppercase character
.{8,10}         # From 8 to 10 characters in length
\s                  # allows a space
$                  # anchor at the end",
RegexOptions.IgnorePatternWhitespace);

Code example:

   1:    public static string emailPattern = 
   2:            @"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"; 
   3:    public static bool IsEmail(string email)
   4:    {
   5:       if (email != null) return Regex.IsMatch(email, emailPattern);
   6:       else return false;
   7:    }


Reference:

URL
Field Expression Format Samples
Validates a name. Allows up to 40 uppercase and lowercase characters and a few special characters that are common to some names. You can modify this list.
Name ^[a-zA-Z''-'\s]{1,40}$ John Doe

O'Dell
Validates the format, type, and length of the supplied input field. The input must consist of 3 numeric characters followed by a dash, then 2 numeric characters followed by a dash, and then 4 numeric characters.
Social Security Number ^\d{3}-\d{2}-\d{4}$ 111-11-1111
Validates a U.S. phone number. It must consist of 3 numeric characters, optionally enclosed in parentheses, followed by a set of 3 numeric characters and then a set of 4 numeric characters.
Phone Number
^[01]?[- .]?(\([2-9]\d{2}\)|[2-9]\d{2})[- .]?\d{3}[- .]?\d{4}$
(425) 555-0123

425-555-0123

425 555 0123

1-425-555-0123
Validates an e-mail address.
E-mail ^([0-9a-zA-Z]([-\.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$ me@example.com
Validates a URL
^(ht|f)tp(s?)\:\/\/[0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*(:(0-9)*)*(\/?)([a-zA-Z0-9\-\.\?\,\'\/\\\+&%\$#_]*)?$ http://www.msn.com Validates a URL
Validates a U.S. ZIP Code. The code must consist of 5 or 9 numeric characters.
ZIP Code ^(\d{5}-\d{4}|\d{5}|\d{9})$|^([a-zA-Z]\d[a-zA-Z] \d[a-zA-Z]\d)$ 12345
Validates a strong password. It must be between 8 and 10 characters, contain at least one digit and one alphabetic character, and must not contain special characters.
Password (?!^[0-9]*$)(?!^[a-zA-Z]*$)^([a-zA-Z0-9]{8,10})$
Validates that the field contains an integer greater than zero.
Non- negative integer ^\d+$ 0

986
Validates a positive currency amount. If there is a decimal point, it requires 2 numeric characters after the decimal point. For example, 3.00 is valid but 3.1 is not.
Currency (non- negative) ^\d+(\.\d\d)?$ 1.00
Validates for a positive or negative currency amount. If there is a decimal point, it requires 2 numeric characters after the decimal point.
Currency (positive or negative) ^(-)?\d+(\.\d\d)?$ 1.20

0 comments: