1.整体匹配
用户输入的今在后面 但是替换的话没有这种顺序,只要是和关键字一样的就会被替换掉
eachColor(content, searchVal) {
// let content = '今天你快乐了吗 ' //后台返回的结果
// let searchVal = '今快了乐' //用户输入的搜索关机字
let arr = []
for (let i = 0, len = searchVal.length; i < len; i++) {
for (let q = 0, len = content.length; q < len; q++) {
if (searchVal[i] === content[q]) arr.push(q)
}
}
content = content.split('')
for (let j = 0, len = arr.length; j < len; j++) {
for (let k = 0; k < content.length; k++) {
content.splice(arr[j], 1, `<span style="color:#F89C35">${content[arr[j]]}</span>`)
break
}
}
return content.join('')
},
},
匹配的字变色
2 单个字匹配
let content='今天你快乐了吗 ';//后台返回的结果
let searchVal='快乐'; //用户输入的搜索关机字
function eachColor(content,searchVal){
let nt=`<span style="color:red">${searchVal}</span>`;
return content.replace(searchVal,nt);
}
这种是简介版本的,只能匹配挨着的关键字,如果在快乐中间加别的就匹配不上
|