Парсим страницу одного сайта. При этом есть лишний di <div class = "test"> text text text text </div> Как удалить контент div'a или как удалить полностью сам div?
Используя функцию preg_match получаем содержимое тега <div>. Дальше используя функцию str_replace заменяем в изначальном коде тег <div> вместе с вставленным содержимым(полученным предидущей функцией) на пустоту.
Ну тут не так просто сказать. Много ли таких divов(с таким классом) в коде? Есть ли перед ним динамическое содержимое?потому что если нет можно просто вырезать символы начиная с n и заканчивая </div>,например. больше подробностей,чего стесняться. никто тут ничего не украдет)
Если таких тегов <div> будет больше одного - можно использовать функцию preg_match_all. Использование моего способа будет правильнее, ведь даже если и нету динамического контента - на сайте вдруг изменится код - скрипт обновлять не придется.
а если,например,divoв рандомное количество,а удалить надо только один определённый?вобщем нужно больше подробностей
div один. Сам он всегда статичен. Меняется только его содержимое от которого нужно избавиться. preg_replace ('#<div class="tooltip"> [a-z0-9]*</div> #sU', 'good', $rezult); Пробовал вот так, но без успеха. p.s. Div содержит таблицы, параграф и прочее.
The46Doctor PHP: echo preg_replace('#(<div class = "test">).*?(</div>)#s', "$1\r\n$2", $html); или весь <div> PHP: echo preg_replace('#<div class = "test">.*?</div>#s', "", $html);