C # Удалить HTML-код и объединить абзац - PullRequest
1 голос
/ 11 октября 2011

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

<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc a dignissim purus. Curabitur enim nibh, tempor id lobortis tincidunt, adipiscing ac felis. Nunc interdum ullamcorper tortor non elementum. Praesent felis mauris, volutpat eu cursus nec, luctus vel odio.</p>

<p>Morbi elementum nunc at nulla iaculis tincidunt. Vivamus sit amet sapien vel enim lacinia ultrices sit amet ac urna. Sed semper mauris id nulla consectetur viverra. Quisque eget leo nisl. Etiam et risus sapien. Aenean vitae ante et erat tincidunt ullamcorper vel a odio. Integer hendrerit turpis et enim convallis rhoncus pharetra enim ullamcorper. Suspendisse porta mollis purus, in lacinia nunc sollicitudin vel. Nam id ligula mi.</p>

Как я могу получить вывод без HTML-кода (это легко), но вместе с тем и абзацев? Как это:

Lorem Ipsum Dolor Sit Amet, Concetetur Adipiscing Elit. Нун Dignissim Purus. Curabitur enim nibh, tempor id lobortis tincidunt, adipiscing ac felis. Nunc interdum ullamcorper tortor non elementum. Praesent felis mauris, volutpat eu cursus nec, luctus vel odio. Morbi elementum nunc at nulla iaculis tincidunt. Вивамус сит амет сапиен вел Язва желудка enim lacinia sit amet ac urna. Сед Семпер Маурис Ид Нулла Concectetur Viverra. Quisque Eget Leo Nisl. Etiam et risus sapien. Aenean vitae ante et erat tincidunt ullamcorper vel odio. целое число hendrerit turpis et enim convallis rhoncus pharetra enim ullamcorper. Suspendisse porta mollis purus, в lacinia nunc sollicitudin vel. Nam id ligula mi.

Спасибо

Ответы [ 3 ]

4 голосов
/ 11 октября 2011

С таким HTML-анализатором, как HTML Agility Pack , все просто:

// remove the html tags
var doc = new HtmlDocument();
doc.LoadHtml(htmlString);
string result = doc.DocumentNode.InnerText;

// remove the line breaks
result = result.Replace("\r", "");
result = result.Replace("\n", "");
0 голосов
/ 11 октября 2011

После того как вы легко удалили HTML, вы можете использовать регулярное выражение для удаления лишних пробелов:

string input = "Lorem ipsum dolor sit amet, consectetur \r\n Morbi elementum nunc at nulla.";
string pattern = @"\s+";
string replacement = " ";
string output = Regex.Replace(input, pattern, replacement);
0 голосов
/ 11 октября 2011

просто прочитайте html и замените <p> и </p> на "", также удалите символы новой строки (\r\n), и я думаю, что вы готовы пойти

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...