一、正则基本概念
1、一种规则、模式
2、强大的字符串匹配工具
3、在js中常与字符串函数配合使用
二、js正则写法
正则在js中以正则对象存在;
(1)var re=new RegExp(正则表达式);
(2)var re=/正则表达式/;
三、正则的基本写法
1、开始结束符 ^ $
2、元字符
(1)任意字符 [abc] abc中的任意一个
(2)范围 [a-z] 字母a到c; [1-9] 数组1到9
(3)排除 [^a-z] 排除字母a-c
(4)任意字符 .
3、量词
(1) {n} 出现n次
(2) {n,m} 最少n次,最多m次
(3) + 任意次 >0次
(4) ? 最少0次 最多1次
(5) * 可有可无
4、转译字符
\d 数字 \D 非数字
\w 数字、字母、下滑线 \W 非数字 字母 下划线
\s 空白字符 \S 非空字符
5、其他字符
i 忽略大小写 例 re=/a/i A或者a
g 全局搜索 例 re=/\d/g 全部数字
四、字符串使用函数
1. str.search(re) //搜索匹配字符,返回位置
2. str.math(re) //搜索字符串,返回匹配字符数组
3. str.replace(re,'替换字符') //搜索字符串,替换匹配字符
//正则对象方法
4. re.test(str) //测试字符串是否满足正则,返回布尔值
5. re.exec(str) //类似字符串方法match
----------------------------------------------------------
示例 测试邮箱格式
邮箱格式: 用户名 @ 邮箱名 . com/cn
字符类型: 字符 数字 下划线 @ 字母 数字 . 字母
正则字符: \w @ [a-z 0-9] [a-z]
量词: + 1 + +
re=/^\w+@[a-z 0-9]+\.[a-z]+$/g
-----------------------------------------------------------
贪婪特性:
获取所有html标签
re=/^<.+>/g; 会匹配第一个《 到最后一个> 中间内容全部当做.处理
改进:
re=/^<[^<]+>/$/g;