^: 1)放某字符前面,表示以什么开头(如:^a,表示以a开头的所有字符串)
2)在方括号里用'^'表示不希望出现的字符,'^'应在方括号里的第一位。(如:%[^a-zA-Z]% ,表示两个百分号中不应该出现字母)
$:放某字符后面,表示以什么结尾
*:放某字符后面,表示没有或更多,还可以用重复次数的范围表示:* 相当于{0,}
+:放某字符后面,表示一次或更多,还可以用重复次数的范围表示:+ 相当于{1,}
?:放某字符后面,表示没有或一次,还可以用重复次数的范围表示: ?相当于{0,1}
():表示接连,例如:(a¦b)*c,表示一串a b混合的字符串后面跟一个c;
¦ :放两字符中间,表示“或”
. :可替代任何字符
[ ] 中的内容是可选字符集
^.$()¦*+?{\ 表示本身时,在需要这些字符前加上转义移字符 \,但是在方括号中,不需要转义字符
\d:用于匹配从0到9的数字
\w:用于匹配字母,数字或下划线字符
应用:
"^\d+$" //非负整数(正整数 + 0)
"^[0-9]*[1-9][0-9]*$" //正整数
"^((-\d+)|(0+))$" //非正整数(负整数 + 0)
"^-[0-9]*[1-9][0-9]*$" //负整数
^-?\d+$ //整数
^\d+(\.\d+)?$ //非负浮点数(正浮点数 + 0)
^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$ //正浮点数
^((-\d+(\.\d+)?)|(0+(\.0+)?))$ //非正浮点数(负浮点数 + 0)
^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$ //负浮点数
^(-?\d+)(\.\d+)?$ //浮点数
^[A-Za-z]+$ //由26个英文字母组成的字符串
^[A-Z]+$ //由26个英文字母的大写组成的字符串
^[a-z]+$ //由26个英文字母的小写组成的字符串
^[A-Za-z0-9]+$ //由数字和26个英文字母组成的字符串
^\w+$ //由数字、26个英文字母或者下划线组成的字符串
^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$ //email地址
^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$ //url
/^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/ // 年-月-日
/^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/ // 月/日/年
^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$ //Emil
(d+-)?(d{4}-?d{7}|d{3}-?d{8}|^d{7,8})(-d+)? //电话号码
^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5])$" //IP地址 ^([0-9A-F]{2})(-[0-9A-F]{2}){5}$ //MAC地址
^[-+]?\d+(\.\d+)?$ //值类型正则表达式
javascript正则表达式检验:
//校验是否全由数字组成
function isDigit(s)
{ var patrn=/^[0-9]{1,20}$/;
if (!patrn.exec(s)) return false
return true }