正则的概念
概念:通过一些符号 和特殊符号来组成的一种模式
作用:主要用来检测一个字符串是否符合我的规则
定义正则
1、 字面量
var re =/abc/
2、 内置构造函数
var re =new RegExp(“abc”)
RegExp:调用RegExp对象的构造函数
正则的方法
1、 test()——检测字符串是否符合正则的规则
语法:正则.test()
返回值:符合ture 和 不符合false
2、 exec()——检查字符串是否符合正则规则
语法:正则.exec()
返回值:返回一个数组,没有匹配到则返回null
只捕获一次
3、 search(//) —— 匹配字符串中需要的字符串
返回值:匹配到了返回匹配到的字符的索引 没有匹配到时返回-1
4、replace( / / , ’ ’ )
5、macth ——匹配字符串中需要的字符
返回值 :一个数组,未匹配到返回null
正则的标识:
1、 g 全局匹配(搜素) 写在正则的最后面
var reg = /abc/g;
2、 i 不区分大小写匹配(搜索)
3、 m 多行搜索
4、 s 允许 . 匹配换行符
5、 u 使用unicode码的模式进行匹配
6、 y 执行“粘性”搜索,匹配从目标字符串的当前位置开始,可以使用y标志
正则中的元字符
1、\d 匹配一个数字。等价于[0-9]
2、\D 匹配一个非数字(除了数字以外的所有字符)
3、\s 匹配一个空格
4、\S 匹配除了空格以外的所有字符
5、\w 匹配一个单字符(数字,字母或者下划线)
6、\W 匹配一个非单字符(除了数字,字母下划线以外的所有字符)
7、 . 匹配除了换行以外的所有字符
8、\n 换行
正则中的限定符
主要用来限定字符出现的次数
1、 * 表示0 到正无穷
2、 + 表示 1 到正无穷
3、 ? 表示 0 到 1
4、 {n} 表示只能出现n次
5、 {n,} 表示出现的次数,n到正无穷,至少出现n次
6、 {n,m} 表示出现的次数时n-m之间
边界符
1、 ^ 以什么开头
^a 表示只能以a开头
2、 $ 以什么结尾
n$ 表示只能以n结尾
特殊符号
一些本来没有特殊符号,跟一些符号组合在一起之后就有特殊含义
一些特殊含义符号 ,跟一些符号组合在一起就没有特殊含义了
1、 \ 转义
2、 | 表示或
3、 () 表示一个整体
4、 [] 表示写在[]里的东西个
5、 - 表示[0-9]之间的一个值
6、 [^] 表示只要不是 中括号里面的内容就可以
7、 - 表示得到没有特殊含义
2019/11/27学习JavaScript的第三周的第三天