预匹配问题
我有index.html
; <头> 布拉布拉布拉 布拉布拉布拉
我需要获取 body 标记内的内容。尝试过
<?php $site = file_get_contents("index.html"); preg_match("/<body[^>]*>(.*?) \/body>/is", $site, $matches); print ($matches[1]); ?>
但它没有输出到任何东西。请告诉我这里的问题。谢谢。
I have index.html
<html>
<head>
bla bla bla
</head>
<body class="someclass">
bla bla bla
</body>
</html>
I need get content inside body tag. Tried this
<?php $site = file_get_contents("index.html"); preg_match("/<body[^>]*>(.*?) \/body>/is", $site, $matches); print ($matches[1]); ?>
But it not output to anything. Please tell me problem here. Thank you.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您应该看一下 PHP Simple HTML DOM Parser: http://simplehtmldom.sourceforge.net/
您可以使用如下方式获取正文:
然后您可以通过以下方式获取内部 HTML:
You should take a look at PHP Simple HTML DOM Parser: http://simplehtmldom.sourceforge.net/
You can get the body with something like this:
you can then get the inner HTML by:
这可能不是你的答案,但我建议你尝试 php DOMDocument link
It may be not your answer but i recommend you to try php DOMDocument link
"/]*>(.*?) \/body>/is"
应为"/]*>; (.*?)<\/body>/is"
"/<body[^>]*>(.*?) \/body>/is"
Should be"/<body[^>]*>(.*?)<\/body>/is"