如何使用 AngleSharp 从 HTML 字符串中查找所有注释标签。注释可以是单行的,也可以是多行的。
<!-- Single line comment. -->
<!-- Multi-
ple line comment.
Lots '""' ' " ` ~ |}{556 of !@#$%^&*()) lines
in
this
comme-
nt! -->
如何使用 AngleSharp 从 HTML 字符串中查找所有注释标签。注释可以是单行的,也可以是多行的。
<!-- Single line comment. -->
<!-- Multi-
ple line comment.
Lots '""' ' " ` ~ |}{556 of !@#$%^&*()) lines
in
this
comme-
nt! -->
Descendents
您可以使用AngleSharp.Extensions.ApiExtensions
. 注释不是元素,因此您不能像往常一样查询它们,但这种扩展方法允许您检索特定类型的节点。
IEnumerable<IComment> comments = document.Descendents<IComment>();
例子:
using AngleSharp;
using AngleSharp.Parser.Html;
using AngleSharp.Dom; // For IComment
using AngleSharp.Extensions; // For Descendents
var parser = new HtmlParser();
var source = @"<!-- Single line comment. -->
<!-- Multi-
ple line comment.
Lots '""""' ' "" ` ~ |}{556 of !@#$%^&*()) lines
in
this
comme -
nt!-->";
var document = parser.Parse(source);
// Get all comment nodes
IEnumerable<IComment> comments = document.Descendents<IComment>();
// Get the text in the comment nodes
foreach (IComment comment in comments)
{
var textValue = comment.TextContent;
...
}