Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用HtmlAlityPack循环遍历HTML的每个节点并删除某些节点?_C#_Dom_Html Agility Pack - Fatal编程技术网

C# 如何使用HtmlAlityPack循环遍历HTML的每个节点并删除某些节点?

C# 如何使用HtmlAlityPack循环遍历HTML的每个节点并删除某些节点?,c#,dom,html-agility-pack,C#,Dom,Html Agility Pack,我需要识别每个节点并删除某些节点,如p,legend等。。 需要使用HtmlAlityPack循环浏览以下html <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD><META content="IE=5.0000" http-equiv="X-UA-Compatible"> <META http-equiv="Content-Type" c

我需要识别每个节点并删除某些节点,如
p
legend
等。。 需要使用HtmlAlityPack循环浏览以下html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><META content="IE=5.0000" http-equiv="X-UA-Compatible">

<META http-equiv="Content-Type" content="text/html; charset=windows-1252">
</HEAD>
<BODY bgcolor="white"><text><TITLE>ABCD</TITLE> 

<P style="page-break-before: always;">
<HR width="100%" size="3" align="CENTER" style="color: rgb(153, 153, 153);">

<fieldset>
    <legend>Personalia:</legend>
    Name: <input type="text"><br>
    Email: <input type="text"><br>
    Date of birth: <input type="text">
  </fieldset>

<P style="margin-top: 0px; margin-bottom: 0px;"><FONT size="1">&nbsp;</FONT></P>
<P align="center" style="margin-top: 0px; margin-bottom: 0px;"><FONT size="2" 
style="font-family: Times New Roman;">B-17 </FONT></P></text>

</BODY></HTML>

ABCD


个性化: 名称:
电子邮件:
出生日期:

B-17


我只是举个例子,试试看

                String content = "Your Html page source as string";
                HtmlNode.ElementsFlags.Remove("form");
                HtmlDocument doc = new HtmlDocument();
                doc.LoadHtml(content);

                // Pass the name of the tag you want to remove 
                DeleteTagByName("tagname",doc);
                public void DeleteTagByName(string name, HtmlDocument HtmlDocument)
                 {
                     HtmlDocument.DocumentNode.SelectSingleNode("//input[@name='" + name + "']").Remove();

                } 

一个可能的复制品,它和你想要的非常相似。您没有具体描述要比较的内容,因此我无法提供更多帮助。有一些标签,如
P
fieldset
legend
等。。我所需要做的就是分别识别每个标签并删除某些标签。你想根据哪个类别删除这些标签?这是内部文本还是标记id、名称还是什么?Kavithai-基于标记名称,我想删除。我相信它支持选择器,所以选择任何你想要的都很简单。我有一个问题,但是:(我只想删除节点,而不是内部html或子节点!@Raghavendra你问了这个问题并得到了答案