Надо извлечь из текста только то, что между тегов

fridayman

Client
Регистрация
25.03.2018
Сообщения
169
Благодарностей
259
Баллы
63
Есть кусочек html, который надо разбить на строчки:

Код:
<p>Процесс строительства двухскатной крыши включает в себя следующие этапы:</p><ul><li>Мауэрлат фиксируется на стенках дома;</li><li>Производится монтаж стропильной системы;</li><li>Установка перекрытий и конька;</li><li>Монтаж обрешетки;</li><li>Обшивочные работы в районе свесов и фронтов;</li><li>Закрепление кровельного материала;</li><li>Установка системы для отведения стоков.</li></ul><p>В процессе строительства используются:</p><ul><li>Рубероид;</li><li>Доски;</li><li>Гвозди, шурупы, шпильки и уголки;</li><li>Материал для утепления;</li><li>Брус;</li><li>Средство для антисептической обработки дерева;</li><li>Кровельный материал.</li></ul>
Причем надо сохранить порядок этих строк. То есть:
Код:
<p>...текст...</p>
<ul><li>...текст...</li>
<li>...текст...</li>
<li>...текст...</li>
<li>...текст...</li>
<li>...текст...</li>
<li>...текст...</li></ul>
<p>...текст...</p>
<ul><li>...текст...</li>
<li>...текст...</li>
<li>...текст...</li>
<li>...текст...</li>
<li>...текст...</li>
<li>...текст...</li>
<li>...текст...</li></ul>
То есть, точь-в-точь как по тексту пересобрать из переменной, но в список.
 

SergSh

Client
Регистрация
10.05.2017
Сообщения
541
Благодарностей
395
Баллы
63
Код:
var list = project.Lists["lst2"];
var text = "<p>Процесс строительства двухскатной крыши включает в себя следующие этапы:</p><ul><li>Мауэрлат фиксируется на стенках дома;</li><li>Производится монтаж стропильной системы;</li><li>Установка перекрытий и конька;</li><li>Монтаж обрешетки;</li><li>Обшивочные работы в районе свесов и фронтов;</li><li>Закрепление кровельного материала;</li><li>Установка системы для отведения стоков.</li></ul><p>В процессе строительства используются:</p><ul><li>Рубероид;</li><li>Доски;</li><li>Гвозди, шурупы, шпильки и уголки;</li><li>Материал для утепления;</li><li>Брус;</li><li>Средство для антисептической обработки дерева;</li><li>Кровельный материал.</li></ul>";
var regex = new Regex(@"<\w+>.*?</\w+>");
regex.Matches(text).Cast<Match>().ToList().ForEach(m=>list.Add(m.Value));
 
  • Спасибо
Реакции: fridayman

fridayman

Client
Регистрация
25.03.2018
Сообщения
169
Благодарностей
259
Баллы
63
Спасибо большое, то - что нужно.:-)
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)