C# 使用标准.Net库验证特定Html标记

C# 使用标准.Net库验证特定Html标记,c#,regex,C#,Regex,我编写了一个简单的函数来验证用户输入。如果输入仅包含(脚本或iframe)html标记,验证规则是验证失败,否则应该成功。功能正常。 我们在.Net中是否有任何库(Nuget包或其他东西)可以提供相同的功能,这样我就不需要编写正则表达式来检查特定的html标记? 我使用regex的实现: public static Regex regexes = new Regex("(\\<script(.+?)\\</script\\>)|(\\<iframe(.+?)\\</

我编写了一个简单的函数来验证用户输入。如果输入仅包含(脚本或iframe)html标记,验证规则是验证失败,否则应该成功。功能正常。 我们在.Net中是否有任何库(Nuget包或其他东西)可以提供相同的功能,这样我就不需要编写正则表达式来检查特定的html标记? 我使用regex的实现:

public static Regex regexes = new Regex("(\\<script(.+?)\\</script\\>)|(\\<iframe(.+?)\\</iframe\\>)");

protected override ValidationResult IsValid(object value, ValidationContext validationContext)
{
    string str = (string)value;

    if (str != null)
    {
        if (regexes.IsMatch(str)) {                 
            return new ValidationResult($"A potentially dangerous value was detected from request {validationContext.Name}: {str}");
        }
    }

    return ValidationResult.Success;
}

public static Regex regexes=new Regex(“(\\如果这是一个愚蠢的问题,可能会重复Sorry,但我的输入只包含“hello world”或“hello world”之类的字符串。这是正式的html文档吗?@zubairm如果是html文档(没有错误)然后最好使用HTML解析器。验证这两个表单的确切正则表达式:
“[\S\S]*?”|“[\S\S]*?”|(?:(?!/>)[^>])?+)?\S*>)[\S\S]*?)>