当前位置 博文首页 > 解决正则表达式\w和\d的疑惑

    解决正则表达式\w和\d的疑惑

    作者:admin 时间:2021-09-10 19:10

    <?php
    $string='April15,2003';
    $pattern='/(\w+)(\d+),(\d+)/i';
    $replacement='${1},${3}';
    echo preg_replace($pattern,$replacement,$string);
    ?>

    这个表达式的结果为April1,2003

    原因:(\w+)能够完整匹配April15,但是因为在(\w+)后面有(\d+),为了能够匹配定义的规则,(\w+)会匹配April1,(\d+)会匹配5
    可以换个表达式避免出现这种情况如:

    $pattern='/([a-z])(\d+),(\d+)/i';

    jsjbwy
    下一篇:没有了