一、上一节说了字符串的serch()方法
这里说一下字符串正则的其他方法
二、replace() 方法
用法1:str.replace(正则,新字符串)
用法1 字符串.replace(正则, function(‘匹配成功的字符’){})
规则:正则去匹配字符串,如果匹配成功,替换成新字符串,并且返回替换后的字符串,匹配失败 则原样返回
例如:
var str = '2345678dfghjfghj'
// var re = /j/
// var newstr = str.replace(re, '卡卡')
// console.log(newstr) //2345678dfgh卡卡fghj
var str = '2345678dfghjfghj'
var re = /j/g
var newstr = str.replace(re, '卡卡')
console.log(newstr) //2345678dfgh卡卡fgh卡卡
// 匹配失败
var re = /1/g
var newstr = str.replace(re, '卡卡')
console.log(newstr) //2345678dfghjfghj
三、函数式replace
// 函数式的replace
var str = 'ccccccc'
var re = /c/
var newstr = str.replace(re, function($0) {
// 这个$0就是你匹配到的那个字符
console.log($0) //c
return ('----') //这个函数结果最终是一个字符串
})
console.log(newstr) //----cccccc
// 敏感词过滤
var str = '云想衣裳花想容,春风拂槛露华浓'
var re = /云|衣|花/g
var newstr = str.replace(re, function($0, $1, $2) {
return ''
})
console.log(newstr) //想裳想容,春风拂槛露华浓
四、方法三 str.split(正则,返回的数组的长度)
// 匹配成功返回数组
var str = '2019-1-1 12:12:12'
var re = /-|\s|:/g
var newstr = str.split(re)
console.log(newstr) //["2019", "1", "1", "12", "12", "12"]
var newstr = str.split(re, 3)
console.log(newstr) //["2019", "1", "1"]