КАК Преобразовать HTML в обычный текст, сохранив вкладки и другую допустимую разметку

WRT это решение, пожалуйста, как мы можем адаптировать его, чтобы сохранить вкладки и другой допустимый текстовый макет

Ссылочное решение:

 public static string StripHTML(string HTMLText, bool decode = true)
        {
            Regex reg = new Regex("<[^>]+>", RegexOptions.IgnoreCase);
            var stripped = reg.Replace(HTMLText, "");
            return decode ? HttpUtility.HtmlDecode(stripped) : stripped;
        }

1 ответ

Решение

Я не уверен, что вы имеете в виду, он сохраняет вкладки и переводы строк

void Main()
{
    var html = "<html>\n\t<body>\n\t\tBody text!\n\t</body>\n</html>";

    StripHTML(html).Dump(); //Prints "\n\t\n\t\tBody text!\n\t\n
}

public static string StripHTML(string HTMLText, bool decode = true)
{
  Regex reg = new Regex("<[^>]+>", RegexOptions.IgnoreCase);
  var stripped = reg.Replace(HTMLText, "");
    return decode ? HttpUtility.HtmlDecode(stripped) : stripped;
}
Другие вопросы по тегам