欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHP中 preg_replace()函数的使用

程序员文章站 2022-06-21 23:46:27
定义 preg_replace — 正则表达式匹配替换 用法 搜索subject中符合pattern的部分,并用replacement替代。 replacement和pattern均可以是数组。 使用比较简单,功能和用法均类似于 str_replace. 比较难理解的是 replacement 可以 ......

定义

preg_replace — 正则表达式匹配替换

用法

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

搜索subject中符合pattern的部分,并用replacement替代。
replacement和pattern均可以是数组。
使用比较简单,功能和用法均类似于 str_replace.
比较难理解的是 replacement 可以后向引用。

replacement may contain references of the form \n or $n, with the latter form being the preferred one. every such reference will be replaced by the text captured by the n'th parenthesized pattern. n can be from 0 to 99, and \0 or $0 refers to the text matched by the whole pattern. opening parentheses are counted from left to right (starting from 1) to obtain the number of the capturing subpattern. note that backslashes in string literals may require to be escaped.

下面举个例子,说明下

示例

<?php
$string = 'april 15, 2003';
$pattern = '/(\w+) (\d+), (\d+)/i';
$replacement = '${1}1,$3';
// \1=april \2=15 \3=2003  \均可用$代替
echo preg_replace($pattern, $replacement, $string);
?>
april1,2003

其中,双引号中 \ 和 $ 均需要转义,单引号不用,下面这几个是等价的

'${1}1,$3' == “\${1}1,\$3” == “\${1}1,\\3”

所以为了书写简洁,便于阅读,推荐全部使用单引号。