检查字符串是否包含XML标记的最佳方法是什么?

时间:2013-06-13 15:30:42

标签: c# xml regex

我知道以下内容会找到潜在的标记,但有没有更好的方法来检查字符串是否包含XML标记,以防止在读取/写入XML文件之间的字符串时出现异常?

    string testWord = "test<a>";
    bool foundTag = Regex.IsMatch(testWord, @"^*<*>*$"));

2 个答案:

答案 0 :(得分:3)

我会使用另一个正则表达式

Regex.IsMatch(testWord, @"<.+?>");

但是,即使它确实匹配,也无法保证您的文件实际 是一个xml文件,因为正则表达式也可能匹配"<<a>"这样无效的字符串,或{ {1}}显然不是 xml。

您应该考虑使用XmlDocument class代替。

"a <= b >= c"

答案 1 :(得分:0)

为什么不在通过XML发送之前HtmlEncode字符串?这样您就可以避免difficulties with Regex parsing tags

相关问题