Tôi đang cố xóa nội dung không cần thiết khỏi HTML. Cụ thể là tôi muốn xóa nhận xét. Tôi tìm thấy một giải pháp khá tốt (Grabbing meta-tags and comments using HTML Agility Pack) tuy nhiên DOCTYPE được coi là nhận xét và do đó bị xóa cùng với các nhận xét. Làm cách nào để tôi có thể cải thiện mã bên dưới để đảm bảo DOCTYPE được giữ nguyên?Cách tách nhận xét khỏi HTML bằng Gói Agility mà không mất DOCTYPE
var htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml(htmlContent);
var nodes = htmlDoc.DocumentNode.SelectNodes("//comment()");
if (nodes != null)
{
foreach (HtmlNode comment in nodes)
{
comment.ParentNode.RemoveChild(comment);
}
}
Có phải đó là an toàn không? Điều gì xảy ra nếu có một nhận xét như ? Tôi biết nó là một trường hợp cạnh nhưng tôi đoán quan điểm của tôi là: không có cách nào tốt hơn là kiểm tra nội dung của nút bình luận? – desautelsj
Có thể bỏ qua nó khi nó bắt đầu với DOCTYPE và là con đầu tiên của phần tử gốc? –
Tôi đã làm một số thử nghiệm và tìm ra nội dung của bình luận thực sự bao gồm ' desautelsj