从字符串中删除javascript但保留CSS样式

时间:2018-03-20 14:02:40

标签: vb.net

我动态生成一些HTML,我需要确保任何类型的恶意JavaScript都不会进入HTML。所以我有这个代码" clean"在将其保存到数据库之前的输入:

        Input = Input.Replace("'", "\'")
        Input = Input.Replace(Chr(34), "\" & Chr(34))
        Input = Input.Replace(vbCrLf, "")
        Return System.Web.HttpUtility.HtmlEncode(Input)

这会清理输入,但它也会剥离输入中的任何内联CSS。有没有办法去除潜在的恶意代码但保留CSS标签?

谢谢!

1 个答案:

答案 0 :(得分:1)

你可以使用这一行

Private input = Regex.Replace(input, "<script.*?<\/script>|<script.*?\/>", "")