//第一步:源数据
let arr = [
'哈哈嘻嘻哈哈123'
,'嘻嘻哈哈嘻嘻456'
]
//第二步:关键字
const keyword = '哈哈'
//第三步:把关键词从静态变成动态
//此外只对数据操作,个数不变的使用map
const newArr = arr.map(item =>{
//item是数组的每一项 是个字符串
//字面量定义的正则表达式内部不能识别变量
//我们需要通过new RegExp(变量)才可以
let reg = new RegExp(keyword,'g')//这里的g表示全局匹配
//replace的用法:replace(需要替换的,替换到那)
let newStr = item.replace(reg,`<span>${keyword}</span>`)
//最后再把它返回出去
return newStr
})
还有一种函数的写法:
//第一步:源数据
let arr = [
'哈哈嘻嘻哈哈123'
,'嘻嘻哈哈嘻嘻456'
]
//第二步:关键字
const keyword = '哈哈'
//第三步:把关键词从静态变成动态
//此外只对数据操作,个数不变的使用map
const newArr = arr.map(item =>{
//item是数组的每一项 是个字符串
//字面量定义的正则表达式内部不能识别变量
//我们需要通过new RegExp(变量)才可以
let reg = new RegExp(keyword,'g')//这里的g表示全局匹配
//replace的用法:replace(需要替换的,替换到那)
let newStr = item.replace(reg,()=>{
return `<span>${keyword}</span>`
})
//最后再把它返回出去
return newStr
})