PHP中,如何用正则提取一个HTML容器

raykwok 发布于 2013/06/04 13:19
阅读 377
收藏 0
PHP
<div class="shit">
	<div class="another-shit">
		<h1>contont</h1>
		<p>ppppppp</p>
	</div>
	<a href="#">my link</a>
	<div class="lie"></div>
</div>
<div class="shit">
	<div class="another-shit">
		<h1>contont</h1>
		<p>ppppppp</p>
	</div>
	<a href="#">my link</a>
	<div class="lie"></div>
</div>
<div class="shit">
	<div class="another-shit">
		<h1>contont</h1>
		<p>ppppppp</p>
	</div>
	<a href="#">my link</a>
	<div class="lie"></div>
</div>
<div class="shit">
	<div class="another-shit">
		<h1>contont</h1>
		<p>ppppppp</p>
	</div>
	<a href="#">my link</a>
	<div class="lie"></div>
</div>
<div class="shit">
	<div class="another-shit">
		<h1>contont</h1>
		<p>ppppppp</p>
	</div>
	<a href="#">my link</a>
	<div class="lie"></div>
</div>
<div class="nonono"></div>

如上代码,我需要提取所有class为shit的整个div容器,请教如何写正则。

也有提取其他容器的需求,我是想问如何提取指定的整个html容器。

<div class="shit">
	<div class="another-shit">
		<h1>contont</h1>
		<p>ppppppp</p>
	</div>
	<a href="#">my link</a>
	<div class="lie"></div>
</div>
加载中
0
祺爸PiscDong
祺爸PiscDong
$('.shit').html();
raykwok
raykwok
你的答复让我眼前一亮…然后闭上了
0
优雅de壞人
优雅de壞人
$pattern='<div class=\"shit\">([\s\S]+?)<\/div>[\s]*<div class=\"nonono\">';
$str='<div class="shit"><div class="another-shit"><h1>contont</h1><p>ppppppp</p></div><a href="#">my link</a><div class="lie"></div></div><div class="nonono"></div>';
preg_match_all('/'.$pattern.'/',$str,$rt);
print_r($rt[1]);
raykwok
raykwok
谢谢。 我修改了一下需求。
返回顶部
顶部