正则表达式
使用环境:(验证字符串是否符合我们设置的规则)
1) 登录:密码验证(字符串+数字);
2) 注册:邮箱、手机号、账号;
3) 解析歌词(lrc);
创建方式:
1)
new RegExp();
2) //; -------★★★★★非常重要
可使用的测试方式:
1) text:function --> Boolean 表示是否符合设置的规则
2)
exec:验证字符串的规则 有两种情况
var result = regexp.exec(“wwww”);
① 符合规则->result->Array
② 不符合规则->result->null
正则表达式修饰符
1) i 在匹配的时候不区分大小写;
2) g 全部完成之后 停止(不会匹配到第一个就停止)(✭✭✭✭✭不能直接使用正则表达式中的测试方法,需要使用字符串的方(如search、 match、 replace、 split));
正则表达式的模式(规则)
v 三种括号的意义
① 中括号[ ],只要符合中括号中的任意字符 就是成功的;如[a-z](只要是a到z之间的小写字母都可以);
② 大/花括号{ },匹配内容的数量
² {n},必须有n个重复的内容(n为数字);
如:/^[A-z]{3}/ 必须以三个字母开头
² {n,m},必须有n到m个范围之内的内容;
如:/[A-z]{3,5}$/ 必须以3-5个字母结束
² {n,},必须有n个以上重复的内容
如:/[\d]{2,}/ 必须包含两个数字
v 元字符:有特殊意义的字符(在使用的时候,(字符)前面都需要加转义符\)
除了\n都匹配
① w:0-9 a-z A-Z (大写的W与它相反)
② d:0-9 (大写的D与它相反)
③ s:空白字符 (大写的S与它相反)
④ b:单词的边界 (大写的B与它相反)
² 查找单词边界(汉字不行),放在前为起始位置,放在后为结束位置
² 单词是一个整体 不能包含空格,有空格则等于拆分为两个单词
² 注意如果是中文 没办法判断。中文可用(indexOf判断)
v 量词:
{ } 匹配内容的数量
^ 以什么开始
$ 以什么结束
* 可以匹配前面的规则 也可以不匹配
如/w*/
+ 至少匹配一个前面的规则
如/w+/
? 可以匹配前面的规则也可以不匹配
?= 表示需要匹配某个规则后面的规则
?! 后面没有紧跟某个规则