C# Html敏捷包-在两个注释之间替换Html
我正在使用Html Agility Pack构建一个具有不同功能的库 其中之一是:C# Html敏捷包-在两个注释之间替换Html,c#,html,html-agility-pack,C#,Html,Html Agility Pack,我正在使用Html Agility Pack构建一个具有不同功能的库 其中之一是: 在HTML中搜索“开始注释标记”和“结束注释标记”之间包含的所有HTML部分 替换与一个搜索字符串匹配的HTML部分的所有HTML 例如: 我需要搜索 你好 拜伊 以下是一个在线示例,演示如何在注释之间获取节点: var doc=new HtmlAgilityPack.HtmlDocument(); doc.LoadHtml(html); var docNode=doc.DocumentNode.In
- 在HTML中搜索“开始注释标记”和“结束注释标记”之间包含的所有HTML部分
- 替换与一个搜索字符串匹配的HTML部分的所有HTML
- 我需要搜索
以下是一个在线示例,演示如何在注释之间获取节点:你好 拜伊
以下是一个在线示例,演示如何在注释之间获取节点:var doc=new HtmlAgilityPack.HtmlDocument(); doc.LoadHtml(html); var docNode=doc.DocumentNode.InnerHtml; var subjects=doc.DocumentNode.subjects().ToList(); var startNode=subjects.FindIndex(x=>x.InnerHtml==“”); var endEnd=subjects.FindIndex(x=>x.InnerHtml==“”); if(startNode!=-1&&endEnd!=1) { var betweenNodes=subjects.GetRange(startNode+1,endEnd-startNode-1); foreach(节点之间的变量节点) { //显示两次“Hi”,一次显示跨度,一次显示文本 Console.WriteLine(node.InnerHtml); } }
var doc=new HtmlAgilityPack.HtmlDocument(); doc.LoadHtml(html); var docNode=doc.DocumentNode.InnerHtml; var subjects=doc.DocumentNode.subjects().ToList(); var startNode=subjects.FindIndex(x=>x.InnerHtml==“”); var endEnd=subjects.FindIndex(x=>x.InnerHtml==“”); if(startNode!=-1&&endEnd!=1) { var betweenNodes=subjects.GetRange(startNode+1,endEnd-startNode-1); foreach(节点之间的变量节点) { //显示两次“Hi”,一次显示跨度,一次显示文本 Console.WriteLine(node.InnerHtml); } }
var doc = new HtmlAgilityPack.HtmlDocument(); doc.LoadHtml(html); var docNode = doc.DocumentNode.InnerHtml; var descendants = doc.DocumentNode.Descendants().ToList(); var startNode = descendants.FindIndex(x => x.InnerHtml == "<!-- data-example-start-try_1 -->"); var endEnd = descendants.FindIndex(x => x.InnerHtml == "<!-- data-example-end-try_1 -->"); if (startNode != -1 && endEnd != 1) { var betweenNodes = descendants.GetRange(startNode + 1, endEnd - startNode - 1); foreach (var node in betweenNodes) { // show 2 times "Hi", once for the span, once for the text Console.WriteLine(node.InnerHtml); } }