js 正则常用函数
正则表达式中,需要转义的字符:
* . ? + $ ^ [ ] ( ) { } | \ /
let reg = /\d+/g
let str = 'ad/23/dfww/454/6'
1. reg.test(str)
===> true
如果字符串中存在正则表达式的匹配结果则返回true否则返回false
2. str.match(reg)
===> ['23', '454', '6']
将符合正则匹配的所有结果,以数组的形式返回
3. str.replace(reg, '**')
===> 'ad/**/dfww/**/**'
let re = /\d+/
str.replace(re, '**')
===> ad/**/dfww/454/6'
正则表达式有全局匹配符时,会将字符串中所有符合该正则匹配的结果全部替换
否则只替换一次
4. str.search(reg)
===> 3
返回第一个匹配结果在字符串中的位置
如果没有匹配结果,则返回 -1
5.let reg = /1(\d+)(\d+)\d/g
let str = 'as123232sfdfd12324ss'
let a = reg.exec(str)
console.log(a)
===> ['123232', '232', '3']
let b = reg.exec(str)
console.log(b)
===> ['12324', '23', '2']
返回找到的结果的同时,也会将该结果中符合该正则表达式的子表达式的结果一同放入数组走返回
当正则表达式中包含全局匹配符g时,没调用一次该函数,都会从已匹配的结果的下一个位置开始继续往下找符合匹配的结果,知道找不到为止