• 正则表达式圆括号--()


    正则的圆括号描述

    (1). 在被修饰匹配次数的时候,括号中的表达式可以作为整体被修饰
    (2). 取匹配结果的时候,括号中的表达式匹配到的内容可以被单独得到

    描述参见(http://www.regexlab.com/zh/regref.htm)

    结合php的preg_match函数来看下以下运行的结果

    $str = 'cabcdf1da32';
    $pattern = '/(abcd)/i';
    preg_match($pattern, $str, $matches);
    echo '<pre>';
    var_dump($matches);

    结果为

    array
      0 => string 'abcd' (length=5)
      1 => string 'abcd' (length=4)
    

    这里为什么会返回两个abcd呢?

    稍微修改一下正则表达式,再来看一下

    $str = 'cabcdf1da32';
    $pattern = '/c(abcd)/i';
    preg_match($pattern, $str, $matches);
    echo '<pre>';
    var_dump($matches);
    

    结果为

    array
      0 => string 'cabcd' (length=5)
      1 => string 'abcd' (length=4)
    

    结合开始说的第2条,那么关于第一个测试返回两条也就明白了,正则的匹配结果作为数组的第一个元素,而圆括号中的匹配内容会作为匹配的第二个元素返回。

  • 相关阅读:
    Eureka 原理圖
    RabbitMQ 介紹
    rabbitmq-3.5.1-安裝
    MyBatis 基础入门
    CSS
    程序员必会算法-KMP算法
    编程这些年
    排序算法之直接插入排序
    排序算法之选择排序
    排序算法之冒泡排序
  • 原文地址:https://www.cnblogs.com/debmzhang/p/3391026.html
Copyright © 2020-2023  润新知