Заменить текст во Inner Html узла на HTMLAgilityPack - PullRequest
0 голосов
/ 04 мая 2020

Я пытаюсь заменить какой-то текст внутри div У меня есть

Внутренний узел Html равен

<div style="text-align:center"><table cellspacing="0" cellpadding="0" ............

, и я хотел бы заменить выравнивание текста: по центру с выравниванием текста: слева.

У меня есть следующий код: -

private static string FormatHtml(string htmlResult)
{
    HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
    doc.LoadHtml(htmlResult);

    HtmlNode docNode = doc.DocumentNode;
    HtmlNodeCollection trNodes = docNode.SelectNodes("//tr");

    foreach (HtmlNode trNode in trNodes)
    {
        HtmlNodeCollection tdNodes = trNode.SelectNodes("td");
        foreach (HtmlNode node in tdNodes)
        {
            string text = node.InnerText;
            if (text.Contains("Dear "))
            {
                doc.DocumentNode.RemoveChild(node);
                HtmlNode newNode = HtmlNode.CreateNode(node.InnerHtml.Replace("center", "left"));
                doc.DocumentNode.AppendChild(newNode);
            }
        }
    }

    return doc.ParsedText;
}

однако кажется, что я не могу удалить и добавить узел.

Может кто-нибудь помощь?

Спасибо

...