这篇博客就来总结一下正则表达式以及表单验证,由于最近在练习jQuery,所以就用jQuery来写一写。
一、正则表达式
正则表达式的作用是用来验证字符串的格式。虽然它的内容比较繁琐,但是功能很强大。它的写法很随意,但是要注意语法规则,在此前提下就可以自己随意拼接。
1、速查表
\ :将下一个字符标记为一个特殊字符、或一个原义字符、或一个向后引用、或一个八进制转义符。
^ :匹配输入字符串的开始位置。
$ :匹配输入字符串的结束位置。
:匹配前面的子表达式零次或多次。
+:匹配前面的子表达式一次或多次。
?: 匹配前面的子表达式零次或一次。
{n}: n是一个非负整数。匹配确定的n次。
{n,}: n是一个非负整数。至少匹配n次。
{n,m}: m和n均为非负整数,其中n<=m。最少匹配n次且最多匹配m次。
?: 当该字符紧跟在任何一个其他限制符(,+,?,{n},{n,},{n,m})后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。
.: 匹配除“\n”之外的任何单个字符。
x|y: 匹配x或y。
[xyz]: 字符集合。匹配所包含的任意一个字符。
[^xyz]: 负值字符集合。匹配未包含的任意字符。
[a-z]: 字符范围。匹配指定范围内的任意字符。
[^a-z]: 负值字符范围。匹配任何不在指定范围内的任意字符。
\b: 匹配一个单词边界,也就是指单词和空格间的位置。
\B: 匹配非单词边界。
\cx: 匹配由x指明的控制字符。
\d: 匹配一个数字字符。
\D: 匹配一个非数字字符。
\f: 匹配一个换页符。
\n: 匹配一个换行符。
\r: 匹配一个回车符。
\s: 匹配任何空白字符,包括空格、制表符、换页符等等。
\S: 匹配任何非空白字符。
\t: 匹配一个制表符。
\v: 匹配一个垂直制表符。
\w: 匹配包括下划线的任何单词字符。
\W: 匹配任何非单词字符。
\xn: 匹配n,其中n为十六进制转义值。十六进制转义值必须为确定的两个数字长。
\num: 匹配num,其中num是一个正整数。对所获取的匹配的引用。
2、常用的正则表达式
用户名: /^[a-z0-9_-]{3,16}$/
密码: /^[a-z0-9_-]{6,18}$/
十六进制值: /^#?([a-f0-9]{6}|[a-f0-9]{3})$/
电子邮箱: /^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/
/^[a-z\d]+(\.[a-z\d]+)*@([\da-z](-[\da-z])?)+(\.{1,2}[a-z]+)+$/
URL: /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/
IP 地址: /((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)/
/^(?:(?:25[0-5]|2[