正则表达式过滤文本,replace的使用

本文介绍了一种使用正则表达式过滤HTML中的恶意脚本(如<script>标签及其相关属性),包括过滤<script>标签、过滤特定属性值以及过滤iframe和frameset标签的方法。
部署运行你感兴趣的模型镜像
//用正则表达式过滤脚本
public string wipeScript(string html) 
{ 
System.Text.RegularExpressions.Regex regex1 = new 

System.Text.RegularExpressions.Regex(@"<script[\s\S]+</script 

*>",System.Text.RegularExpressions.RegexOptions.IgnoreCase); 
System.Text.RegularExpressions.Regex regex2 = new 

System.Text.RegularExpressions.Regex(@" href *= *[\s\S]*script 

*:",System.Text.RegularExpressions.RegexOptions.IgnoreCase); 
System.Text.RegularExpressions.Regex regex3 = new 

System.Text.RegularExpressions.Regex(@" 

on[\s\S]*=",System.Text.RegularExpressions.RegexOptions.IgnoreCase); 
System.Text.RegularExpressions.Regex regex4 = new 

System.Text.RegularExpressions.Regex(@"<iframe[\s\S]+</iframe 

*>",System.Text.RegularExpressions.RegexOptions.IgnoreCase); 
System.Text.RegularExpressions.Regex regex5 = new 

System.Text.RegularExpressions.Regex(@"<frameset[\s\S]+</frameset 

*>",System.Text.RegularExpressions.RegexOptions.IgnoreCase); 
html = regex1.Replace(html, ""); //过滤<script></script>标记 
html = regex2.Replace(html, ""); //过滤href=javascript: (<A>) 属性 
html = regex3.Replace(html, " _disibledevent="); //过滤其它控件的on...事件 
html = regex4.Replace(html, ""); //过滤iframe 
html = regex5.Replace(html, ""); //过滤frameset 
return html; 
} 

//对输入的字符串是否含有<script></script>判断
public bool IsValidScript(string html) 
{ 
return Regex.IsMatch(html,@"<script[\s\S]+</script *>");
}

您可能感兴趣的与本文相关的镜像

ACE-Step

ACE-Step

音乐合成
ACE-Step

ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值