求PHP提取html中 body 内容 的正则表达式。会追加分数。

我是把本地的一个html文件读取出来存在一个变量$daiMa里边,然后用正则表达式$css_zheng_ze="/(<body>)(.|\n)*(<\/body>)/";... 我是把本地的一个html文件读取出来存在一个变量$daiMa里边,
然后用正则表达式
$css_zheng_ze = "/(<body>)(.|\n)*(<\/body>)/";
preg_match_all($css_zheng_ze,$daiMa,$end);
匹配
可是 $end二维数组里边得不到含有body内容的结果啊。
正则表达式
/(<body>)(.*?)(<\/body>)/这个 也不行。

$end[2][0]里边什么都没有啊。

下边是body的代码。
……
</head>
<body>
<div class="warp">
<div class="shirt">

</div>
</div><!--warp-->
</body>
</html>
body内容 不含有<body>标签。
展开
 我来答
kingood110
推荐于2018-04-28
知道答主
回答量:27
采纳率:0%
帮助的人:22万
展开全部
"/(<body>)(.*?)(<\/body>)/"这个其实就比较对了,只是少了点模式修正符号
改成
"/(<body>)(.*?)(<\/body>)/is"
就可以了。
模式修正符号是很重要的。

下边是书上的原话。

s:如果设置了此修正符,模式中的圆点字符“.”匹配所有字符,包括换行符。即将字符串视为单行,换行符看作普通字符看待。

参考资料: 书。

76476567
2012-04-18 · TA获得超过441个赞
知道小有建树答主
回答量:257
采纳率:100%
帮助的人:182万
展开全部
$css_zheng_ze = "/<body>([\s\S]*)<\/body>/Ui";
preg_match_all($css_zheng_ze,$daiMa,$end);
绝对可以
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
myzj12345
2012-04-14 · TA获得超过375个赞
知道小有建树答主
回答量:788
采纳率:0%
帮助的人:583万
展开全部
preg_match_all('#<body>(.+?)</body>#is',$daiMa,$end);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
惊雨cnw168
2012-04-24 · TA获得超过184个赞
知道小有建树答主
回答量:452
采纳率:0%
帮助的人:302万
展开全部
把·替换成[\w\W]就行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式