js正则表达式替换捕获内容

将@王者的面具<102292>中的尖括号和尖括号内的id删除,将用户名称高亮,并将id在昵称dom元素的data-uid属性保存。
用js字符串的replace函数实现,用正则表达式匹配需要替换的字符,正则表达式中,每对括号()为一个分组,可以用正则的分组来捕获匹配到的内容,用占位符$1、$2代替。

let p = /(\@[\u4e00-\u9fa5a-zA-Z0-9_]{0,})<([\d]{0,})>/g
let targetContentStr = contentStr.replace(p,'<span style="color:#30aeb9" data-uid="$2">$1</span>');
console.log(targetContentStr);
// @<span style="color:#30aeb9" data-fuid="102292">王者的面具</span>

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容