import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "<hr\\s*\\/>\\s*[\\\\n]*\\s*(.+<\\/p>)";
final String string = "<hr />\\n\\n<h3 class=\"brown art\">Базовая комплектация обычно включает в себя (включая сборку и доставку):</h3>\\n<ul>\\n <li><em>Сруб из строганного бревна, средний диаметр 25 см. (вершинка).</em></li>\\n <li><em>Высота потолков 1 этажа 2.7 м., 2 этажа 2.5-2.7 м.</em></li>\\n <li><em>Перегородки по проекту рубленные из такого же бревна, 1 этаж.</em></li>\\n <li><em>Тип рубки чаша или лапа (любой).</em></li>\\n <li><em>Потолочные и половые балки — лафет 0.15 м.</em></li>\\n <li><em>Стропильная система – брус 50x200 мм., через 60 см.</em></li>\\n <li><em>Фронтоны крыши зашиваются по каркасу вагонкой.</em></li>\\n <li><em>Обрешетка крыши – доска обрезная 25x150 мм.</em></li>\\n <li><em>Покрытие крыши рубероидом.</em></li>\\n <li><em>Все расходные материалы (лен, скобяные изделия, гидроизоляция фундамента, рубероид).</em></li>\\n <li><em>Доставка по Московской области, и др. регионам центральной части РФ (Ярославская, Рязанская, Нижегородская, Тверская, Калужская, Тульская, Владимирская, Ивановская обл. и др. регионы РФ).</em></li>\\n <li><em>Разгрузочные работы и сборка на участке заказчика.</em></li>\\n</ul>\\n<p class=\"black art\">Стоимость базового комплекта сруба под крышу с доставкой, разгрузкой и сборкой:</p>\n"
+ "<hr />\\n\\n<h3 class=\"brown art\">Базовая комплектация обычно включает в себя (включая сборку и доставку):</h3>\\n<ul>\\n <li><em>Сруб из строганного бревна, средний диаметр 25 см. (вершинка).</em></li>\\n <li><em>Высота потолков 1 этажа 2.7 м., 2 этажа 2.5-2.7 м.</em></li>\\n <li><em>Перегородки по проекту рубленные из такого же бревна, 1 этаж.</em></li>\\n <li><em>Тип рубки чаша или лапа (любой).</em></li>\\n <li><em>Потолочные и половые балки — лафет 0.15 м.</em></li>\\n <li><em>Стропильная система – брус 50x200 мм., через 60 см.</em></li>\\n <li><em>Фронтоны крыши зашиваются по каркасу вагонкой.</em></li>\\n <li><em>Обрешетка крыши – доска обрезная 25x150 мм.</em></li>\\n <li><em>Покрытие крыши рубероидом.</em></li>\\n <li><em>Все расходные материалы (лен, скобяные изделия, гидроизоляция фундамента, рубероид).</em></li>\\n <li><em>Доставка по Московской области, и др. регионам центральной части РФ (Ярославская, Рязанская, Нижегородская, Тверская, Калужская, Тульская, Владимирская, Ивановская обл. и др. регионы РФ).</em></li>\\n <li><em>Разгрузочные работы и сборка на участке заказчика.</em></li>\\n</ul>\\n<p class=\"black art\">Стоимость базового комплекта сруба под крышу с доставкой, разгрузкой и сборкой:</p>";
final Pattern pattern = Pattern.compile(regex);
final Matcher matcher = pattern.matcher(string);
while (matcher.find()) {
System.out.println("Full match: " + matcher.group(0));
for (int i = 1; i <= matcher.groupCount(); i++) {
System.out.println("Group " + i + ": " + matcher.group(i));
}
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html