怎样用js方法过滤html等代码,如@

如下,怎么用一个JS设置不显示@<html><head><title>无标题文档</title></head><body><divid=main"">文章内容@文章内容<... 如下,怎么用一个JS设置不显示@
<html>
<head>
<title>无标题文档</title>
</head>
<body>

<div id=main"">文章内容@文章内容</div>
</body>

</html>
要网页显示时,只显示替换后的文字
展开
 我来答
einea
2017-09-12 · TA获得超过518个赞
知道小有建树答主
回答量:225
采纳率:68%
帮助的人:103万
展开全部

关键点:

  1. 正则表达式,把要替换的内容用正则表达式表达出来,如字符串、数字、字母中文、标点符号等。

  2. replace() 方法,用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。



上代码:

<html>
<head>
    <title>无标题文档</title>
    <meta charset="UTF-8">
</head>
<body>
    <div id="main">文章内容@文章内容,文章内容@文章内容</div>
</body>

<script>
// 获取标签中文本
var doj_str = document.getElementById('main').innerText;
// 要替换的字符串,最后的g表示全局匹配,例如又多个@
var reg_str = /@/g;
// 替换为空
var new_str = doj_str.replace(reg_str, '');
// 输出新字符串
document.write(new_str);
</script>

</html>
追问
网页显示时,替换前后的文字都显示了,能不能只显示替换后的文字:
文章内容@文章内容,文章内容@文章内容
文章内容文章内容,文章内容文章内容
追答

只显示替换后的内容:

<html>
<head>
    <title>无标题文档</title>
    <meta charset="UTF-8">
</head>
<body>
    <div id="main">文章内容@文章内容,文章内容@文章内容</div>
</body>

<script>
// 获取标签中文本
var doj = document.getElementById('main');
var doj_str = doj.innerText;
// 要替换的字符串,最后的g表示全局匹配,例如又多个@
var reg_str = /@/g;
// 替换为空
var new_str = doj_str.replace(reg_str, '');
// 原位置输出新字符串
doj.innerText = new_str;
</script>

</html>
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式