一、正则表达式:定义字符串的组成规则。
(1)基本语法:
①单个字符:[]
- \d:表示单个数字字符 [0-9]
- \w:表示单个单词字符[a-zA-Z0-9_]
②量词符号:
- ?:表示出现0次或1次
- *:表示出现0次或多次
- +:出现1次或多次
- {m,n}:表示 >=m 数量 <= n
- {,n}: m如果缺省: {,n}:最多n次
- {m,}:n如果缺省:{m,} 最少m次
③开始结束符号
- * ^:开始
- * $:结束
(2)正则对象:
①创建
- var reg = new RegExp("正则表达式");
- var reg = /正则表达式/;(最常用的创建方式)
②方法
- test(参数):验证指定的字符串是否符合正则定义的规范
二、最常用的正则表达式
- 邮箱正则表达式: /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/
- 用户名: /^[a-zA-Z0-9_]{3,30}$/ 【表示用户名可以是3到30个字符组成(只能是 字母、数组、下划线)】
- 一个或多个汉字 :/^[\u0391-\uFFE5]+$/
- 邮政编码:/^[1-9]\d{5}$/
- QQ号码:/^[1-9]\d{4,10}$/ 【表示qq号是5到11位,不能以数字0开头】
- 邮箱:/^[a-zA-Z_]{1,}[0-9]{0,}@(([a-zA-z0-9]-*){1,}\.){1,3}[a-zA-z\-]{1,}$/
- 用户名(字母开头 + 数字/字母/下划线):/^[A-Za-z][A-Za-z1-9_-]+$/
- 手机号码:/^1[3|4|5|8][0-9]\d{8}$/
- URL:/^((http|https)://)?([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$/
- 18位身份证号:/^(\d{6})(18|19|20)?(\d{2})([01]\d)([0123]\d)(\d{3})(\d|X|x)?$/