正则表达式:
判断特殊字符
1 var re=new RegExp("a","i")
2 var re=/a/i //匹配含有a字母的字符串,i表示不区分大小写
3 var re=/\*/i //匹配*字符
4 匹配特殊符号需要用\转义(! $ ^ + = | / \ () { })[o t n v f r xnn uxxx cX]
5
\w 匹配任何ASCII单字符[a-z A-Z 0-9]
\W 匹配任何ASCII单字符之外的字符
\s 匹配任何Unicode的空白符
\S 匹配任何Unicode空白符之外的字符
\d 匹配任何数字[0-9]
\D 匹配任何数字之外的字符
[...] 匹配方括号中所有的字符
[^...] 匹配非方括号中所有的字符
6 重复类
{n} 匹配前一项n次
{n,} 匹配前一项至少一次,至多次数不限
{n,m} 匹配前一项至少n次,最多m次
{?}匹配前一项0次或者一次
{+} 匹配前一项至少1次
{*} 匹配前一项0次或者多次 eg: var re=/a{3}/i //表示有三个连续a字符的字符串
7 选择符
| 分割符可用来选择文字
^ 匹配字符串的开头
$ 匹配字符串的结尾
\b 匹配一个单词的边界
\B 与\b相反,匹配一个非单词边界
8 分组
(…) 将几个项目组合成一个单元
(?…)与(…)类似,只是不记忆与该组合所匹配的内容
标志
i 匹配时不区分大小写
g 匹配时执行全局匹配
m 匹配时执行多行匹配 eg: var re=/a/ig //匹配a字符开始的会继续向后匹配
9 正则表达式对象的方法
exec() 执行正则表达式的匹配,返回一个数组
test() 测试正则表达式的匹配,返回布尔值
toSource() 返回RegExp对象的源代码
oString() 将RegExp对象转换成字符串
10 unicode \u4e00-\u9fa5—表示所有中文字符
11 var re=/[^\w\ue400-\u9fa5]/g;//匹配所有的非法字符予以警告
12 交互行为用户名
oName.onfocus={
name_msg.style.display="block";
name_msg.innerHTML='5-25 个字符,一个汉字为两个字符。推荐使用中文会员名'
}
oName.onkeyup