需要Body标签内的数据,但没有任何其他标签

时间:2016-10-07 19:42:10

标签: c# html regex streamreader

嗨我以html格式恢复, 我正在使用StreamReader读取文件,我正在使用以下方法删除标签。

using (StreamReader sr = new StreamReader("\\Myfile.html"))
                {
                    String line = sr.ReadToEnd();
                    string jj = Regex.Replace(line, "<.*?>", String.Empty);
    }

其工作真的很酷

但是根据我的要求,我只需要在body标签内部提供数据。 但没有身体标签,里面没有标签。

1 个答案:

答案 0 :(得分:0)

不要使用Regex进行HTML / XML解析。使用Html / Xml解析器。这里解释为什么你不应该使用它。

RegEx match open tags except XHTML self-contained tags

Can you provide some examples of why it is hard to parse XML and HTML with a regex?

您可以使用HTML Agility pack

在Html文档中加载字符串

这里有一个如何做的小例子:

public string ReplacePElement() 
{
    HtmlDocument doc = new HtmlDocument();
    doc.Load(htmlFile);

    foreach(HtmlNode p in doc.DocumentNode.SelectNodes("body"))
    {

    }

    return doc.DocumentNode.OuterHtml;
}