//用户
var w_yh = /^[\u2E80-\u9FFF]+$/ 中文
var w_yh = /^[a-z0-9_-]{3,16}$/ 英文
//账号
var w_oid = /^[0-9]{5,11}$/;
//密码
var w_omm = /^[\x21-\x7E]{6,18}$/;
//手机号
var w_sjh = /^1([38][0-9]|4[579]|5[0-3,5-9]|6[6]|7[0135678]|9[89])\d{8}$/ 改进
var w_sjh = /^1([38]\d|5[0-35-9]|7[3678])\d{8}$/; 以前
//身份证号
var w_szfh=/^[1-9]\d{5}(18|19|2([0-9]))\d{2}(0[0-9]|10|11|12)([0-2][1-9]|30|31)\d{3}[0-9Xx]$/;
//邮件地址
var w_yjdz=/^[A-Za-z\d]+([-_.][A-Za-z\d]+)*@([A-Za-z\d]+[-.])+[A-Za-z\d]{2,4}$/;
1:正则创建方式
var reg=new RegExp('要匹配的元素','修饰符')
var reg=//;
alert(typeof reg) Object
2:正则的方法
test() input框里的值通过test方法去匹配一个正则,匹配成功返回true否则返回false。
exec()找到则返回匹配的文本,若没有匹配到,则返回null。
3:字符串的方法
字符串对象调用的函数(支持正则)
1)search():搜索,返回第一次搜索到的元素的下标,找不到返回-1
2)match():匹配,返回匹配成功的字符串,组成的数组,未匹配成功则返回null,以数组的形式返回结果
match函数既可以匹配普通字符串,也可以匹配正则表达式所表示的字符串
3)replace():替换:既可以替换普通字符串,也可以替换正则表达式所表示的字符串,对全局g敏感
4)split():分割:把字符串按指定参数进行拆分,返回拆分后形成的数组,对全局g不敏感
4:焦点方法
onblur 失去焦点
onfocus 获得焦点
5:元字符
\d:数字字符'0'~'9'
\D:非数字字符
\w:数字、字母、下划线字符:即单词字符
\W:非单词字符
\s:空格字符
\S:非空格字符
\b:单词边界//匹配的只是一个位置 这个位置的一侧是构成单词的字符 另一侧为非单词字符 字符串的开始和结束位置
\B:非单词边界
.:表示任意单个字符,除了换行 \n
2、中括号/方括号:某个指定范围的若干字符
[abcde]:匹配这个集合中的任何一个字符,其中之一
[^abcdef]:不匹配这个集合中的任何一个字符
^[abcdef]:匹配这个集合中的任何一个字符(这个字符必须开头)
[0-9]:任意一个数字字符'0'~'9'
[a-z]:任意一个小字字母
[A-Z]:任意一个大字字母
[A-z]:任意一个字母(包括大小写及部分标点[\]_`^)
[选项1 | 选项2 | 选项3]:三个选项其中之一
6、量词:c表示字符串,m和n表示个数
c+:表示c的个数至少1个
c*:表示c的个数至少0个
c?:表示c的个数是0个或者1个
c{m}:表示c的个数是m个
c{m,n}:表示c的个数是m个~n个范围内
c{m,}:表示c的个数至少m个
c$:表示以c结尾的字符串
^c:表示以c开头的字符串
0(?=c):表示0后紧跟c的字符串
XXX(?!c):表示XXX其后没有紧跟c的字符串
7:修饰符
i:检索时不区分大小写
g: 执行全局检索(检索时,会查找所有匹配的字符串,并不是找到一个就结束查找)在调用特定函数时有效
m:执行多行匹配 加^和$符效果明显
数字验证 var reg=/^[0-9]{6,10}$/g;
汉字验证/^[\u4e00-\u9fa5]{2,5}$/