辅助工具:
1:在线匹配http://tool.oschina.net/regex/
2:百度前端助手
3:本文配套例子马云代码
1:创建正则表达式对象
1-1 字面量方式
1-2 new 关键字
1-3 字符窜全局替换
2:常用匹配规则
2-1 原字符
1任意字符
2 \w字母,数字,下划线
3 \s 任意空白字符
4 \d 匹配任意数字。等同于【0-9】
5 \D匹配非数字。等同于【^0-9】
6 |或匹配,如 /x|y/ 正则可匹配x 或 y 两个字符
7 ^ 匹配字符串的开始
8 $ 匹配字符串的结束
9 [abs] 表示 包含里面的任意一个
2-2 反义字符
1 [^x] 匹配除 “x” 之外的所有字符 。 其中 “x” 可为任意字符
2 [^xyz] 同上 ,匹配除 “x, y ,z”之外的任意字符
重复匹配
3-1 ? 重复常出现零次或一次
3-2 + 重复出现一次或多次
3-3 * 重复出现零次或一次
3-4 {n} 重复出现n次
3-5 {n.} 至少重复出现n次
3-6 {n,m} 重复出现 m 到 n次, 其中 m < n
分组
4-1 用括号分组
4-2 分组的应用
正则表达式解读
- /^(0|86|17951)?(13[0-9]|15[012356789]|166|17[3678]|18[0-9]|14[57])[0-9]{8}$/
/^(0|86|17951)? 0,866,17951 可以是0次或一次
1: (13[0-9]|15[012356789]|166|17[3678]|18[0-9]|14[57])
- 13[0-9]
- 15[012356789]
- 166 //后面只能匹配的数字
- 17[3678]
- 18[0-9]
- 14[57]
2: [0-9]{8}$ //后面八位数每一位数都要是0~9之内的数字
2 /\w+([-+.]\w+)@\w+([-.]\w+).\w+([-.]\w+)*/
1. \w+ 数字,字母,下划线有1个或多个
2. ([-+.]\w+) - + .任意一个; 数字,字母,下划线有1个或多个
3. \w+
4. ([-.]\w+)*
5. \.\w+
6. ([-.]\w+)*