Home  >  Article  >  Backend Development  >  正则婚配嵌套div ,求PHP实现

正则婚配嵌套div ,求PHP实现

WBOY
WBOYOriginal
2016-06-13 12:58:13867browse

正则匹配嵌套div ,求PHP实现~
如下html串:
$str = '


    
1111111111

    
2222222222

    link1
 

 

     
1111111111

      正则婚配嵌套div ,求PHP实现
     
2222222222

 
';
需要匹配出的结果:
    将
中的内容匹配出来, 即:
   1=>     
           
1111111111

           
2222222222

           link1

   2=>     
           
1111111111

            正则婚配嵌套div ,求PHP实现
           
2222222222

php程序实现,在线等~
        
------解决方案--------------------
引用:
$patten='/(
(*)
)/';
preg_match_all($patten,$str,$match);


没有这么简单.因为会有多个
,你应该从内层开始查找,然后一层一层的往外,知道匹配到
为止
------解决方案--------------------
<?php<br />
$str = '<div class="am1"><br />
    <div class="image">1111111111</div><br />
    <div class="image">2222222222</div><br />
    <a href="test.php">link1</a><br />
</div><br />
<div class="am1"><br />
     <div class="image">1111111111</div><br />
     <img  src="./tt.gif" / alt=" 正则婚配嵌套div ,求PHP实现 " ><br />
     <div class="image">2222222222</div><br />
</div>';<br />
if (preg_match_all('#<div[^>]*>((?>[^</div>]+<br><font color='#FF8000'>------解决方案--------------------</font><br><a.+?>.+?</a><br><font color='#FF8000'>------解决方案--------------------</font><br><img .+?/ alt=" 正则婚配嵌套div ,求PHP实现 " ><br><font color='#FF8000'>------解决方案--------------------</font><br>(?R))*)</div>#is', $str, $matches)){<br />
	print_r($matches);<br />
}<br />
 ?>
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article: pChart库的使用请问 Next article: php佯装来路