HTML5 is really big now, and pattern validation for input tags is part of this. the browser will show the control as red or disallow input if the input is wrong.
regex patterns for commonly used HTML5 number validations. also, please list javascript/ecmascript 262 5.1 regex,it is a small subset of normal regex. things like \d are not available. I think the patterns used for browser regex is ecmascript/javascript regex. the
specification is here:
integer 0 and above: pattern="^[0-9]+$"
integer 1 and above: pattern="^[1-9][0-9]*$"
0 or positive integer or positive simple real number like 1.1 or 1: pattern="^[0-9](\.[0-9]+)?$"
0 or positive integer or positive simple real number like 1.1 or 1.1e-200 or 1: pattern="^[0-9](\.[0-9]+)?([Ee][+-]?[0-9]+)?$"
integer: pattern="^[+-]?[0-9]+$"
nonzero integer:
pattern="^[+-]?[1-9][0-9]*$"
integer or simple real number like 1.1 or 1: pattern="^[+-]?[0-9](\.[0-9]+)?$"
integer or simple real number like 1.1 or 1.1e-200 or 1: pattern="^[+-]?[0-9](\.[0-9]+)?([Ee][+-]?[0-9]+)?$"
phone number validations come in a variety of
regexes.
(555)-111-2222 pattern="^\([0-9][0-9][0-9]\)\-[0-9][0-9][0-9]\-[0-9][0-9][0-9][0-9]$"
(555).111.2222 pattern="^\([0-9][0-9][0-9]\)\.[0-9][0-9][0-9]\.[0-9][0-9][0-9][0-9]$"
555-111-2222 pattern="^[0-9][0-9][0-9]\-[0-9][0-9][0-9]\-[0-9][0-9][0-9][0-9]$"
555.111.2222 pattern="^[0-9][0-9][0-9]\.[0-9][0-9][0-9]\.[0-9][0-9][0-9][0-9]$"
1-(555)-111-2222 pattern="^\1\-([0-9][0-9][0-9]\)\-[0-9][0-9][0-9]\-[0-9][0-9][0-9][0-9]$"(555).111.2222 pattern="^\([0-9][0-9][0-9]\)\.[0-9][0-9][0-9]\.[0-9][0-9][0-9][0-9]$"
1-555-111-2222 pattern="^1\-[0-9][0-9][0-9]\-[0-9][0-9][0-9]\-[0-9][0-9][0-9][0-9]$"
1.555.111.2222 pattern="^1\.[0-9][0-9][0-9]\.[0-9][0-9][0-9]\.[0-9][0-9][0-9][0-9]$"
there are also 7-digit local phone numbers. but these are rarely used in web sites.
111-2222 pattern="^[0-9][0-9][0-9]\-[0-9][0-9][0-9][0-9]$"
111.2222
pattern="^[0-9][0-9][0-9]\.[0-9][0-9][0-9][0-9]$"
zip code validation in the USA is pretty simple. it is either 5 digits or 5 digits followed by a dash followed by 4 digits.
canada used alphanumerics for their postal code.
5-digit zip code: pattern="^[0-9][0-9][0-9][0-9][0-9]$"
zip+4: pattern="^[0-9][0-9][0-9][0-9][0-9]\-[0-9][0-9][0-9][0-9]$"
either zip or zip+4: pattern="^[0-9][0-9][0-9][0-9][0-9](\-[0-9][0-9][0-9][0-9])?$"
there are regexes also for iso 8601 (I think it was) date/time input into HTML5. a subset is supported via the input element.
I will tell you right now I don't like spiders. it would be a book I would not buy.