在一段字符串中把其中一部分高亮
程序员文章站
2022-03-27 09:47:51
...
实现原理 替换要高亮的部分为一个标签 包裹的内容
// 例
const a = 'qwert'
//这里要把a中的w高亮
// 吧w 替换为 <apan style:'color:red'>w</apan>
封装过程
// 原始数据
const a = 'qwert'
// 封装
function fun(原字符串,要被替换的字符串){
//在这里进行替换
}
实现
export const HighlightReplace = (original,alter)=>{
// original原始的字符串
// alter要被替换的内容
const reg = new RegExp(alter, 'ig') // 创建以要替换内容的正则 i不区分大小写 g全局匹配
// 返回被替换完成的字符串
return original.replice(reg,val=>`<apan>${val}</sapn>`)
}
这里使用了 replace方法 替换字符串中的内容
简单写法 replace(匹配替换项的正则,要替换的内容)
复杂写法 replace(匹配替换项的正则, function(val){ 返回 替换的结果 } )
val是字符串的每一个字符
当val匹配正则 执行函数 返回替换的结果
推荐阅读