Logo
技术 C#

如何用正则表达式过滤html中所有script标签

photo
Pastore Antonio

2022年04月28日

用正则表达式过滤html中所有Script 的方法:

1、定义正则表达式
/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi
2、用正则表达式处理script的方法如下:
<html>
<head>
<!–此处引入script脚本用于测试开始–>
<script type=”text/javascript” src=”/jquery/jquery.js”></script>
<script type=”text/javascript”>
$(document).ready(function(){
$(“.btn1”).click(function(){
alert($(“p”).html());
});
});
</script>
<!–此处引入script脚本用于测试结束–>
</head>
<body>
<p>This is a paragraph.</p>
<!–这里增加一个按钮,点击后会删除所有的script块的代码–>
<button class=”btn1″ οnclick=”removeAllScript();”>删除script</button>
</body>
</html>
<!–定义function处理删除–>
function removeAllScript(obj){
//定义正则表达式,只要是存在于<script>和</script>之间的内容都会被删除
var SCRIPT_REGEX = /<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi;
while (SCRIPT_REGEX.test(obj)) {//传入文档对象,获取整体内容
text = text.replace(SCRIPT_REGEX, “”); //正则替换为空
}
}

就是当o中存在writeAdNew时,替换掉o中所有的script标签

本文为原创文章,请注意保留出处!
修复群晖Synology Drive client右键菜单缺失问题 Local, clean & environmental 作者:Pastore Antonio
1806 浏览量
1779 浏览量
configure: error: Package requirements (oniguruma) were not met Local, clean & environmental 作者:Pastore Antonio
1524 浏览量
Adobe Acrobat Pro 激活 Local, clean & environmental 作者:Pastore Antonio
1519 浏览量
追寻日出,找回自己 Local, clean & environmental 作者:Pastore Antonio
1488 浏览量