当前位置: 代码迷 >> 综合 >> 前端JS转换HTML转义字符
  详细解决方案

前端JS转换HTML转义字符

热度:37   发布时间:2024-01-29 20:35:11.0

 今天再做一个项目的时候,后端PHP输出的字符串到前端有转义符,也是再别人博客看到的转义方法,转载一下做个记录。

//去掉html标签
function removeHtmlTab(tab) {return tab.replace(/<[^<>]+?>/g,'');//删除所有HTML标签
}
//普通字符转换成转意符function html2Escape(sHtml) {return sHtml.replace(/[<>&"]/g,function(c){return {'<':'&lt;','>':'&gt;','&':'&amp;','"':'&quot;'}[c];});
}
//转意符换成普通字符function escape2Html(str) {var arrEntities={'lt':'<','gt':'>','nbsp':' ','amp':'&','quot':'"'};return str.replace(/&(lt|gt|nbsp|amp|quot);/ig,function(all,t){return arrEntities[t];});
}
// &nbsp;转成空格
function nbsp2Space(str) {var arrEntities = {'nbsp' : ' '};return str.replace(/&(nbsp);/ig, function(all, t){return arrEntities[t]})
}
//回车转为br标签
function return2Br(str) {return str.replace(/\r?\n/g,"<br />");
}
//去除开头结尾换行,并将连续3次以上换行转换成2次换行
function trimBr(str) {str=str.replace(/((\s|&nbsp;)*\r?\n){3,}/g,"\r\n\r\n");//限制最多2次换行str=str.replace(/^((\s|&nbsp;)*\r?\n)+/g,'');//清除开头换行str=str.replace(/((\s|&nbsp;)*\r?\n)+$/g,'');//清除结尾换行return str;
}
// 将多个连续空格合并成一个空格
function mergeSpace(str) {str=str.replace(/(\s|&nbsp;)+/g,' ');return str;
}

 

  相关解决方案