'/a(.*?)d/'第一个匹配的是abcd,为什么第二次匹配的是bc?恰好是都不包含a和d,正则表达式明明有a和d的,好郁闷

来源:3-5 使用正则表达式进行匹配

苏乞儿儿

2016-11-26 22:31

Array([0]=>abcd [1]=>bc),为什么[1]是bc?

写回答 关注

1回答

  • ___C___
    2016-11-26 23:13:17
    已采纳

    $Array[0]保存完整模式的所有匹配, $Array[1] 保存第一个子组的所有匹配

    例子:

        正则表达式:'/a(.*?)d/'

        数据:"abcd,aokd"

    匹配结果如下:

            Array                    //完整模式匹配结果

            (
               [0] => abcd
               [1] => aokd
            )
           

            Array                    //匹配结果

            (
               [0] => bc
               [1] => ok
            )




    苏乞儿儿

    "$Array[1] 保存第一个子组的所有匹配"意思是除掉'/a(.*?)d/'正则表达式中的a和d剩下的所有匹配么?

    2016-11-28 23:35:03

    共 1 条回复 >

PHP进阶篇

轻松学习PHP中级课程,进行全面了解,用PHP快速开发网站程序

181836 学习 · 2577 问题

查看课程

相似问题