Как я могу захватить все содержимое внутри тега `` с помощью регулярного выражения?
Как я могу захватить все содержимое внутри тега <body>
с помощью регулярного выражения?
Например,
<html><body><p><a href="#">xx</a></p>
<p><a href="#">xx</a></p></body></html>
Я хочу вернуть только это,
<p><a href="#">xx</a></p>
<p><a href="#">xx</a></p>
Или какие-нибудь другие лучшие идеи? может быть, DOM, но я должен использовать saveHTML();
, тогда он вернет doctype
и body
тег...
Очиститель HTML - это боль в использовании, поэтому я решаю не использовать его. Я подумал, что регулярное выражение может быть следующим лучшим вариантом для моей катастрофы.
9
2 answers
preg_match("/<body[^>]*>(.*?)<\/body>/is", $html, $matches);
$matches[1]
будет содержимым тега тела
21
Author: Flambino, 2011-07-31 20:55:12
preg_match("~<body.*?>(.*?)<\/body>~is", $html, $match);
print_r($match);
1
Author: genesis, 2011-07-31 20:52:36