Heim  >  Artikel  >  Backend-Entwicklung  >  正则婚配嵌套div ,求PHP实现

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

WBOY
WBOYOriginal
2016-06-13 12:58:13898Durchsuche

正则匹配嵌套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 />
 ?>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel: pChart库的使用请问 Nächster Artikel: php佯装来路