注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

淘尽网 官方博客

淘尽网http://www.tao3w.com做最好的比价网站

 
 
 

日志

 
 
关于我

淘尽网 http://www.tao3w.com 做最好的比价网站,做最好的数据抓取专家。

网易考拉推荐

值得研究的一些正则表达式例子  

2010-09-06 15:02:39|  分类: 正则表达式 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

例子一:

$str = '
其他文本其他文本 <div>仅单层 </div> </div>(注意:后面多一个 </div>)
其他文本其他文本其他文本
<div>外层
     <div>中层
         <div>内层 </div>
     </div>
</div>
# 这是另一种情况
# start 闭合错误
<div>外层
     <div>中层
         <div>内层 </div>
     </div>
</font>
# end 闭合错误
其他文本 <font>外层 <span>里层 </span> </font>其他文本其他文本……
';
$re = "/<([a-z]+)[^>]*>([^<>]|(?R))*<\/\\1>/is";
preg_match_all($re,$str,$matches);
print_r($matches[0]);
echo PHP_VERSION; // 5.2.5

例子二:

<?php
$reg   =   '#  
    \(  
          (?P <outside>  
              (?P <inside> [^()]+)  
              |  
              (?R)  
          )*  
    \)  
#x ';  

$m   =   preg_match_all($reg,   '(first_part)(second_part(third_part)) ',   $matches);  
var_dump($matches);  
?>


结果:

array(3)   {
    [0]=>
    array(2)   {
        [0]=>
        string(12)   "(first_part) "
        [1]=>
        string(25)   "(second_part(third_part)) "
    }
    [ "outside "]=>
    array(2)   {
        [0]=>
        string(10)   "first_part "
        [1]=>
        string(12)   "(third_part) "    
    }
    [ "inside "]=>
    array(2)   {
        [0]=>
        string   "first_part "
        [1]=>
        string   "second_part "
    }
}

  评论这张
 
阅读(303)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017