Парсинг блоков тегов через регулярки на PHP
Давайте научимся получать целые
блоки HTML кода. Пусть, к примеру,
у нас есть следующий тег header
:
text
<header class="header">
<p>
text
</p>
<p>
text
</p>
</header>
text
Получим содержимое этого блока:
<?php
preg_match('#<header[^>]*>(.+?)</header>#su', $str, $match);
?>
Проверим, что мы поймали правильный текст:
<?php
var_dump($match[1]);
?>
Найдите содержимое тега footer
:
text
<footer id="footer" class="footer">
<p>
text
</p>
<p>
text
</p>
</footer>
text
Найдите содержимое тега head
и тега body
:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>тайтл</title>
</head>
<body>
основное содержимое страницы
</body>
</html>
Найдите содержимое тега main
:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>тайтл</title>
</head>
<body>
<div class="wrapper">
<main class="main">
основное содержимое страницы
</main>
</div>
</body>
</html>