function htmlTextReplace(inputHtml, replaceTarget, replaceValue) {
let tags = []//数组 分组字符串
inputHtml.replace(/<.+?>/g, (item) => {
tags.push(item)
})
var outHtml = ''//最后输出数据
for (let i = 0; i < tags.length; i++) {
outHtml += tags[i]//输出内容先放输入标签
if (i < tags.length - 1) { //判断是否最后一个字符串
let startTagIndex = inputHtml.indexOf(tags[i])//获取字符串在全部中的索引位置
let endTagIndex = inputHtml.indexOf(tags[i + 1], startTagIndex + tags[i].length - 1) //结束位置= 下一个匹配字符串的索引位置
if (startTagIndex != endTagIndex) {//如果索引为位置一样,说明下一个字符串为空?
let reg = new RegExp(replaceTarget, 'g')
let tempstr=inputHtml.substring(startTagIndex + tags[i].length, endTagIndex);
tempstr=tempstr.replace(reg, replaceValue);
outHtml+=tempstr;
//outHtml += inputHtml.substring(startTagIndex + tags[i].length, endTagIndex).replace(reg, replaceValue)//放入替换后的内容
}
inputHtml = inputHtml.substring(endTagIndex, inputHtml.length)//输入内容改变成未处理内容的部分
}
}
return outHtml;
}
调用方式:htmlTextReplace(html, '%', '*')//其中html是页面的源代码,可以替换内容中的%号为*号,而不用担心标签中的100%之类的符号被替换掉!
版权所有:有信心——uxinxin 我的个人网站欢迎常来!手机版(新站开启,请多多关照) 豫ICP备12017930号-1
豫公网安备 41910102000493号