利用正则表达式去除所有html标签,只保留文字
后台将富文本编辑器中的内容返回到前端时如果带上了标签,这时就可以利用这种方法只保留文字。
标签的格式有以下几种
1.<div class="test"></div>
2.<img />
3.自定义标签<My-Tag></My-Tag>
针对以上几种标签,确定的正则的规则是 reg=/<\/?.+?\/?>/g
<
表示尖括号
第一个\/?
表示</div>
这种标签的情况
.+?
表示将中间所有内容替代掉
第二个\/?
表示<img/>
这种情况
/g
表示全局替换
代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>去除所有标签</title>
</head>
<script>
function matchReg(str){
let reg=/<\/?.+?\/?>/g;
console.log(str.replace(reg,''));
}
matchReg(`<p>去除所有html标签,<img/><My-Tag class="abc" value="test">自定义标签也可以去除哦</My-Tag></p>`);
</script>
<body>
</body>
</html>