/** * 富文本编辑器敏感字替换 * @param html * @param keywords * @param replacecontents * @returns {string} */ function replaceContent(html,keywords,replacecontents){ //匹配html标签中间的内容 var patt1 = new RegExp(">(.*?)(?=<)","g"); //每个匹配结果会多一个>比如<p>哈哈</p>,匹配出来会是>哈哈,后面将>进行替换 var matchStrs = html.match(patt1); var words = []; //替换> for(var i=0;i<matchStrs.length;i++){ var matchStr = matchStrs[i].substring(1,matchStrs[i].length); for(var j=0;j<keywords.length;j++){ var patt2 = new RegExp(keywords[j],"g"); matchStr = matchStr.replace(patt2,replacecontents[j]); } words.push(matchStr); } // 将html中间的内容进行替换方便后面连接,如将<p>哈哈</p>替换成<p>%s</p> var temp = html.replace(patt1,">%s"); //将拆分出来的标签按顺序和替换敏感字后的中间内容进行连接 var arr = temp.split("%s"); var finalStr = ""; for(var i=0;i<(arr.length-1);i++){ finalStr += arr[i] + words[i]; } return finalStr; }
富文本编辑器中的敏感词替换
最新推荐文章于 2024-12-10 23:14:17 发布