zoukankan      html  css  js  c++  java
  • PHP的 preg_match_all

    语法:int preg_match_all ( string pattern, string subject, array &matches [, int flags] )

    这个函数的返回值是整个pattern匹配到的结果数量

    matches(注意这里是引用)是一个二维数组,matches[0] 是整个pattern匹配的结果。matches[1] 是第一个子模式(正则表达式中的子模式,就是圆括号括起来的部分)匹配的结果,matches[2]是 第二个子模式的匹配结果,依次推matches[N]是 第N个子模式的匹配结果。

    说明有N个括号,就对应有N个子模式,子模式的元素就是括号中匹配到的内容。子模式中元素的个数=正则匹配到的结果的个数。

    举例:

    <?php  
    	$pattern = "/<[^>]+>(.*)</[^>]+>/U";
    	$subject = "<b>example:</b><div align = left>this is a test</div>";
        preg_match_all($pattern,$subject,$out);
    	print_r($out);	
    ?>
    

    结果:

    $pattern 正则在字符串中匹配到了2个满足条件的结果,分别是

    匹配结果1:
    <b>example:</b>
    
    
    匹配结果2:
    <div align = left>this is a test</div>

    所以每隔大数组里面的元素个数都是2,并且元素之间都是对应的(通过数组的索引键)

    注意:这个结果的形式,array[0]是整个pattern匹配到的结果,array[1]是pattern中子模式 (.*) 所匹配到的结果。但是array[1]匹配的结果是和array[0]中的结果相对应



  • 相关阅读:
    iOS No such file or directory
    获取图片某点或区域的颜色
    GCD 异步分组执行
    FMDB
    键盘样式风格有关设置
    libc++abi.dylib handler threw exception
    苹果Xcode帮助文档阅读指南2
    面试集锦-常量,const, const 对指针的影响
    支付宝遇到的坑和解决方案
    闲谈
  • 原文地址:https://www.cnblogs.com/echojson/p/10749493.html
Copyright © 2011-2022 走看看