Я знаю, я знаю ... регулярное выражение - не лучший способ извлечь текст HTML. Но мне нужно извлечь текст статьи из множества страниц, я могу хранить регулярные выражения в базе данных для каждого веб-сайта. Я не уверен, как парсеры XML будут работать с несколькими сайтами. Вам понадобится отдельная функция для каждого сайта.
В любом случае, я не знаю много о регулярных выражениях, так что терпите меня.
У меня есть страница HTML в формате, подобном этому
<html>
<head>...</head>
<body>
<div class=nav>...</div><p id="someshit" />
<div class=body>....</div>
<div class=footer>...</div>
</body>
Мне нужно извлечь содержимое контейнера класса тела.
Я пробовал это.
$pattern = "/<div class=\"body\">\(.*?\)<\/div>/sui"
$text = $htmlPageAsIs;
if (preg_match($pattern, $text, $matches))
echo "MATCHED!";
else
echo "Sorry gambooka, but your text is in another castle.";
Что я делаю не так? Мой текст заканчивается в другом замке.
* РЕДАКТИРОВАТЬ: ооооо ... ничего, я нашел код читабельности