PHP preg_replace/preg_match vs PHP str_replace

前端 未结 3 1703
没有蜡笔的小新
没有蜡笔的小新 2020-12-04 13:12

Can anyone give me a quick summary of the differences please?

To my mind they both do the same thing?

Thanks

3条回答
  •  一生所求
    2020-12-04 14:05

    str_replace replaces a specific occurrence of a string, for instance "foo" will only match and replace that: "foo". preg_replace will do regular expression matching, for instance "/f.{2}/" will match and replace "foo", but also "fey", "fir", "fox", "f12", etc.

    [EDIT]

    See for yourself:

    $string = "foo fighters";
    $str_replace = str_replace('foo','bar',$string);
    $preg_replace = preg_replace('/f.{2}/','bar',$string);
    echo 'str_replace: ' . $str_replace . ', preg_replace: ' . $preg_replace;
    

    The output is:

    str_replace: bar fighters, preg_replace: bar barhters

    :)

提交回复
热议问题