PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

php正则如何实现查找替换

藏色散人
藏色散人 原创
2020-10-15 10:08:47 2689浏览

在php中可以使用正则表达式“preg_replace ( $pattern , $replacement , $subject , $limit , $count)”实现查找替换。

推荐:《PHP视频教程

php 正则搜索和替换 preg_replace

preg_replace — 执行一个正则表达式的搜索和替换

方法说明:

preg_replace ( $pattern , $replacement , $subject , $limit , $count)

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

$limit , $count 参数可有可无

limit : 每个模式在每个subject上进行替换的最大次数。默认是 -1(无限)。

count : 如果指定,将会被填充为完成的替换次数。

返回值 :

如果subject是一个数组, preg_replace()返回一个数组, 其他情况下返回一个字符串。

如果匹配被查找到,替换后的subject被返回,其他情况下 返回没有改变的 subject。如果发生错误,返回 NULL 。

实例1:

<?php
$PIWIK_API = &#39;filter_offset={offset}&period={period}&date={date}&#39;;
$patterns = array(
    &#39;/{offset}/&#39;,
    &#39;/{period}/&#39;,
    &#39;/{date}/&#39;
);
$replacements = array(
    33,
    &#39;day&#39;,
    &#39;216-11-11&#39;
);
$url = preg_replace($patterns, $replacements, $PIWIK_API);
//结果: $url = "filter_offset=33&period=day&date=216-11-11"

实例2:

<?php
$PIWIK_API = array(
    &#39;filter_offset&#39; => &#39;{offset}&#39;,
    &#39;period&#39; => &#39;{period}&#39;,
    &#39;date&#39; => &#39;{date}&#39;
);
$patterns = array(
    &#39;/{offset}/&#39;,
    &#39;/{period}/&#39;,
    &#39;/{date}/&#39;
);
$replacements = array(
    33,
    &#39;day&#39;,
    &#39;216-11-11&#39;
);
$url = preg_replace($patterns, $replacements, $PIWIK_API);
//结果: 
/*
$url = array(3) {
  ["filter_offset"]=>
  string(2) "33"
  ["period"]=>
  string(3) "day"
  ["date"]=>
  string(9) "216-11-11"
}
*/
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。