预匹配问题

发布于 2024-11-24 14:31:26 字数 360 浏览 0 评论 0原文

我有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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

清引 2024-12-01 14:31:27

您应该看一下 PHP Simple HTML DOM Parser: http://simplehtmldom.sourceforge.net/

您可以使用如下方式获取正文:

$html = file_get_html('index.html')
$body = $html->find('body');

然后您可以通过以下方式获取内部 HTML:

$content = $body->innertext;

You should take a look at PHP Simple HTML DOM Parser: http://simplehtmldom.sourceforge.net/

You can get the body with something like this:

$html = file_get_html('index.html')
$body = $html->find('body');

you can then get the inner HTML by:

$content = $body->innertext;
甜警司 2024-12-01 14:31:26
<?php 
$site = file_get_contents("index.html"); 
preg_match("/<body.*?>(.*?)<\/body>/is", $site, $matches); 
print ($matches[1]); 
?>
<?php 
$site = file_get_contents("index.html"); 
preg_match("/<body.*?>(.*?)<\/body>/is", $site, $matches); 
print ($matches[1]); 
?>
滥情空心 2024-12-01 14:31:26

这可能不是你的答案,但我建议你尝试 php DOMDocument link

It may be not your answer but i recommend you to try php DOMDocument link

寄意 2024-12-01 14:31:26

"/]*>(.*?) \/body>/is" 应为 "/]*>; (.*?)<\/body>/is"

"/<body[^>]*>(.*?) \/body>/is" Should be "/<body[^>]*>(.*?)<\/body>/is"

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文