Как очистить плохо сформированный HTML с помощью HTML Agility Pack

Я пытаюсь заменить эту ужасную коллекцию регулярных выражений, которая сейчас используется для очистки блоков плохо сформированного HTML, и наткнулся на HTML Agility Pack для C #. Это выглядит очень мощно, но я не смог найти пример того, как я хочу использовать пакет, который, на мой взгляд, был бы желаемой функциональностью, включенной в него. Я уверен, что я идиот и не могу найти подходящий метод в документации.

Позвольте мне объяснить ... скажем, у меня был следующий html:

<p class="someclass">
    <font size="3">
        <font face="Times New Roman">
            this is some text
            <a href="somepage.html">Some link</a>
        </font>
    </font>
</p>

... который я хочу выглядеть:

<p>
    this is some text
    <a href="somepage.html">Some link</a>
</p>

Когда я использую метод HtmlNode.Remove (), он удаляет узел и все его дочерние элементы. Есть ли способ удалить узел с сохранением потомков?

8
задан Uwe Keim 21 February 2019 в 10:24
поделиться