• 技术文章 >后端开发 >PHP问题

    php怎么实现正则替换内容

    青灯夜游青灯夜游2022-04-27 16:58:26原创513

    php正则替换内容的方法:1、用preg_replace(),可执行正则表达式的搜索和替换,语法“preg_filter (正则式,替换值,数据)”;2、用preg_filter(),语法“preg_filter(正则式,替换值,数据)”。

    本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

    在php中,可以使用下面两个函数来实现正则替换内容

    1、使用preg_replace()函数

    preg_replace() 函数可以执行正则表达式的搜索和替换,是一个强大的字符串替换处理函数。语法格式:

    preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )

    搜索 subject 中匹配 pattern 的部分, 以 replacement 进行替换。

    参数说明:

    返回值

    示例1:将 hello 替换为 phpcn

    <?php
    $string = 'hello 123, 456';
    $pattern = '/(\w+) (\d+), (\d+)/i';
    $replacement = 'phpcn ${2},$3';
    echo preg_replace($pattern, $replacement, $string);
    ?>

    1.png

    示例2:删除空格字符

    <?php
    header('content-type:text/html;charset=utf-8');   
    $str = '欢  迎  来 到 p h p 中 文 网';
    $str = preg_replace('/\s+/', '', $str);
    // 将会改变为'欢迎来到php中文网'
    echo $str;
    ?>

    2.png

    2、使用preg_filter()函数

    preg_filter() 函数也用于执行一个正则表达式的搜索和替换,等价于preg_replace() 函数;不同的是 preg_filter() 函数只返回匹配成功的结果,而 preg_replace() 返回所有结果,不管是否匹配成功。

    示例:比较preg_filter() 和preg_replace()

    <?php
    header('content-type:text/html;charset=utf-8');   
    $subject = array('1', 'a', '2', 'b', '3', 'A', 'B', '4'); 
    $pattern = array('/\d/', '/[a-z]/', '/[1a]/'); 
    $replace = array('A:$0', 'B:$0', 'C:$0'); 
     
    echo "preg_filter 返回值:";
    var_dump(preg_filter($pattern, $replace, $subject)); 
     
    echo "preg_replace 返回值:";
    var_dump(preg_replace($pattern, $replace, $subject)); 
    ?>

    3.png

    推荐学习:《PHP视频教程

    以上就是php怎么实现正则替换内容的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:正则表达式 php
    上一篇:php怎么将二维数组转三维数组 下一篇:php怎么进行数字和字母之间的转化
    千万级数据并发解决方案

    相关文章推荐

    • php正则表达式中点怎么转义• javascript中正则表达式/ig表示什么意思• 怎么快速掌握正则表达式?通过 AST 来学学正则语法!• php怎么利用正则去掉回车符• 归纳整理python正则表达式解析
    1/1

    PHP中文网