一、test方法
正则对象.test(被检测的字符串):查看正则表达式与指定的字符串是否匹配
返回值:如果正则表达式与指定的字符串匹配,返回true,否则false。
// 定义字符串
const str = 'web前端、PHP、Java、GO、Python'
// 创建正则对象
const reg = /前端/
// 调用 test 方法
const res = reg.test(str)
// 打印结果
console.log(res)//true
二、exec方法
正则对象.exec(被检测的字符串):查找获取符合规则的字符串
返回值:
1、如果匹配失败,返回 null。
2、如果匹配成功,返回一个数组。
// 定义字符串
const str = 'web前端、PHP、Java、GO、Python'
// 创建正则对象
const reg = /后端/
// 调用 test 方法
const res = reg.test(str)
// 打印结果
console.log(res)//null
三、量词
n*:匹配任何包含零个或多个 n 的字符串。>=0
n+:匹配任何包含至少一个 n 的字符串。 >=1
n?:匹配任何包含零个或一个 n 的字符串。 0 || 1
n{X}:匹配包含 X 个 n 的序列的字符串。
n{X,}:匹配包含至少 X 个 n 的序列的字符串,{X,} 中间不能有空格。
n{X,Y}:匹配包含 X 到 Y 个 n 的序列的字符串,包括X和Y个,{X,Y} 中间不能有空格。
四、边界符
^:匹配字符串的开头(以谁开头)
$:匹配字符串的结尾(以谁结尾)
^xxx$:只匹配xxx这个字符串
五、修饰符
g:单词 global 的缩写,匹配所有满足正则表达式的结果。
i:单词 ignore 的缩写,正则匹配时字母不区分大小写。
六、字符类
.:匹配除换行符之外的任何单个字符
[abc]:匹配 [] 中的任意字符(字符串中只要包含a或者b或者c,就算匹配,全都不包括则不匹配。)
[^abc]:和 [abc] 相反,匹配除了abc以外的其他任意字符。
[0-9]:匹配0~9之间的任意一个数字,也可以写成 [5-8]这种,表示匹配 5~8 之间的任意一个数字。
[a-z]:匹配一个小写字母,也可以写成 [a-f] 这种,表示匹配 a~f 之间的任意一个字母。
[A-Z]:和 [a-z] 类似,只不过匹配大写字母。
[A-z]:匹配大写字母、小写字母、_ \ [ ] ` ^ 中的任意一个字符
[0-9a-zA-Z]:匹配任意一个数字、字母
七、预定义类
\d:匹配任意一个数字,相当于 [0-9]。
\D:匹配任意一个非数字字符,相当于 [^0-9]。
\w:匹配大写字母、小写字母、下划线 、0-9 中的任意一个字符,相当于 [A-z]。
\W:和 \w 相反,匹配除了大写字母、小写字母、下划线以外的任意一个字符。
\s:匹配一个空白字符,包括换行符、制表符、空格符等。
\S:匹配一个非空白字符,和 \s 相反。
八、replace方法
基本语法:
字符串.replace(regexp|substr, newSubStr)
const str = 'hello帅哥,hello小可爱,Hello小姐姐'
const reg = /hello/gi
const res = str.replace(reg, '你好')
console.log(res)//'你好帅哥,你好小可爱,你好小姐姐'