原标题:php中几个字符串替换函数详解
在php中字符替换函数有几个如有:str_replace、substr_replace、preg_replace、preg_split、str_split等函数,下面我来给大家总结介绍介绍。
一、str_replace(find,replace,string,count)
作用:str_replace() 函数使用一个字符串替换字符串中的另一些字符。
参数 描述find 必需。规定要查找的值。replace 必需。规定替换 find 中的值的值。string 必需。规定被搜索的字符串。count 可选。一个变量,对替换数进行计数。
例
在本例中,我们将演示带有数组和 count 变量的 str_replace() 函数:
代码如下
复制代码
$arr = array("blue","red","green","yellow");print_r(str_replace("red","pink",$arr,$i));echo "Replacements: $i";?>输出:
Array([0] => blue[1] => pink[2] => green[3] => yellow)Replacements: 1
补充:count如果被指定,它的值将被设置为替换发生的次数。
二、_replace(string,replacement,start,length)
作用:substr_replace() 函数把字符串的一部分替换为另一个字符串。
参数 描述string 必需。规定要检查的字符串。replacement 必需。规定要插入的字符串。start 必需。规定在字符串的何处开始替换。
■正数 - 在第 start 个偏移量开始替换■负数 - 在从字符串结尾的第 start 个偏移量开始替换■0 - 在字符串中的第一个字符处开始替换 charlist 可选。规定要替换多少个字符。
■正数 - 被替换的字符串长度■负数 - 从字符串末端开始的被替换字符数■0 - 插入而非替换
例子
代码如下
复制代码
echo substr_replace("Hello world","earth",6);?>
输出:
Hello earth
三、preg_replace ( pattern , replacement , subject,limit = -1 ,$count )
作用:执行一个的搜索和替换
参数 描述pattern 必需。需要搜索的模式。replacement 必需。用于替换的字符串或数组。subject 必需。需要替换的字符串或数组。limit 替换的次数。-1为无限count 完成替换的次数,变量
Example #1 使用后向引用紧跟数值原文
代码如下
复制代码
$string = 'April 15, 2003';$pattern = '/(w+) (d+), (d+)/i';$replacement = '${1}1,$3';echo preg_replace($pattern, $replacement, $string);?>
以上例程会输出:
April1,2003
Example #2 preg_replace()中使用基于索引的数组
代码如下
复制代码
$string = 'The quick brown fox jumped over the lazy dog.';$patterns = array();$patterns[0] = '/quick/';$patterns[1] = '/brown/';$patterns[2] = '/fox/';$replacements = array();$replacements[2] = 'bear';$replacements[1] = 'black';$replacements[0] = 'slow';echo preg_replace($patterns, $replacements, $string);?>
以上例程会输出:
The bear black slow jumped over the lazy dog.
四、preg_split ( pattern , subject,limit = -1 ,flag )
作用:通过分割字符串
参数 描述pattern 必需。需要搜索的模式。replacement 必需。用于替换的字符串或数组。subject 必需。需要替换的字符串。limit 被分割的字符串最多limit。flag 模式
例 1672. preg_split() 例子:取得搜索字符串的成分
代码如下
复制代码
// split the phrase by any number of commas or space characters,// which " ", r, t, n and f$keys = preg_split ("/[s,]+/", "hypertext language, programming");?>
例 1673. 将字符串分割成字符
代码如下
复制代码
$str = 'string';$chars = preg_split('//', $str, -1, PREG_SPLIT_NO_EMPTY);print_r($chars);?>
例 1674. 将字符串分割为匹配项及其偏移量
代码如下
复制代码
$str = 'hypertext language programming';$chars = preg_split('/ /', $str, -1, PREG_SPLIT_OFFSET_CAPTURE);print_r($chars);?>
本例将输出:
Array([0] => Array([0] => hypertext[1] => 0)
[1] => Array([0] => language[1] => 10)
[2] => Array([0] => programming[1] => 19)
)
五、str_split ( subject,length)
作用:将字符串分割成数组
参数 描述subject 字符串。length 每一段的长度。
例子 1
代码如下
复制代码
print_r(str_split("Hello"));?>
输出:
Array([0] => H[1] => e[2] => l[3] => l[4] => o)
例子 2
代码如下
复制代码
print_r(str_split("Hello",3));?>
输出:
Array([0] => Hel[1] => lo)