Поиск регулярным выражением фрагмента текста с пустой строкой - C#

Узнай цену своей работы

Формулировка задачи:

Столкнулся со следующей проблемой: есть книга в виде HTML, в которой главы представлены так:
<h2>Глава 1</h2>
 
<div class='chapter_title'>Название главы</div>
Необходимо заменить этот код для каждой главы на такой:
<h3>Глава 1</br>
 
<span class="chapter_name">Название главы</span></h3>
Я не могу справиться с Regex.Matches - не могу написать регулярное выражение, которое бы выделяло текст от тега <h2> до тега </div>. Там есть переносы на новую строку плюс пустая строка. Пробовал разные варианты и никак ничего не находится. Regex.Matches выполняется с опцией RegexOptions.Multiline. Где подводный камень? Спасибо

Решение задачи: «Поиск регулярным выражением фрагмента текста с пустой строкой»

textual
Листинг программы
            string s = @"<h2>Глава 1</h2>
 
<div class='chapter_title'>Название главы</div>";
            Regex r = new Regex(@"<h2>(?<name>[а-яА-Я0-9\s]+</h2>\s+<div class='[\w]+'>[а-яА-Я0-9\s]+)</div>", RegexOptions.Compiled | RegexOptions.Multiline);
            Match m = r.Match(s);
            MessageBox.Show(m.Groups["name"].Value);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.615 из 5
Похожие ответы