如何过滤src和href中的危险脚本
如题,用正则表达式实现,网上找了一些,但都不可行,请教这里的高人了
过滤此类
<a href= "javascript:alert( 'haha '); "> 点我吧 </a>
<img src= "javascript:document.write( 'haha '); " />
如何用正则表达式过滤这些html语句中的恶意脚本啊?
另:
[point=?]内容[/point]
如何用正则表达式取出?的值?
------解决方案--------------------第一个问题,是要这个结果吗?
string yourStr = ................;
string result = Regex.Replace(yourStr, @ "( <a[^> ]*href=([ ' " "])?javascript[^> ]*> [\s\S]*? </a> | <img[^> ]*src=([ ' " "])?javascript[^> ]*> ) ", " ", RegexOptions.IgnoreCase);
第二个问题
string yourStr = ..................;
string point = " ";
Match m = Regex.Match(yourStr, @ "\[point=(? <p> [^\]]*)\] ", RegexOptions.IgnoreCase);
if (m.Success)
{
point = m.Groups[ "p "].Value;
}