场景:百度编辑器等插入数据库后,html标签被转义,管理端js调用接口返回文章信息,渲染页面展示的时候想要去除html标签
1、将转意符 换成普通字符;
2、移除HTML标签代码
//转意符 换成普通字符
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];
});
}
/*移除HTML标签代码*/
function removeHTMLTag(str, length = 0) {
str = str.replace(/<\/?[^>]*>/g,''); //去除HTML tag
str = str.replace(/[ | ]*\n/g,'\n'); //去除行尾空白
//str = str.replace(/\n[\s| | ]*\r/g,'\n'); //去除多余空行
str = str.replace(/ /ig,'');//去掉
//如果展示指定长度的字符,并使用省略号
if (length > 0) {
if (length < str.length) {
return str.slice(0,length) + '......';
}
}
return str;
}