php中几个字符串替换函数详解

复制代码 代码如下:$username = “zongzi”;
echo substr_replace($username,’**’,’1′,’2′); 定义和用法

一、str_replace(find,replace,string,count)

$username = “zongzi”;
echo substr_replace($username,’**’,’1′,’2′);

substr_replace() 函数把字符串的一部分替换为另一个字符串。

作用:str_replace() 函数使用一个字符串替换字符串中的另一些字符。

定义和用法

substr_replace() 函数把字符串的一部分替换为另一个字符串。

语法

参数 描述
find 必需。规定要查找的值。
replace 必需。规定替换 find 中的值的值。
string 必需。规定被搜索的字符串。
count 可选。一个变量,对替换数进行计数。

语法

substr_replace(string,replacement,start,length)
参数 描述
string 必需。规定要检查的字符串。
replacement 必需。规定要插入的字符串。
start

必需。规定在字符串的何处开始替换。

  • 正数 – 在第 start 个偏移量开始替换

  • 负数 – 在从字符串结尾的第 start 个偏移量开始替换

  • 0 – 在字符串中的第一个字符处开始替换

charlist

可选。规定要替换多少个字符。

  • 正数 – 被替换的字符串长度

  • 负数 – 从字符串末端开始的被替换字符数

  • 0 – 插入而非替换

substr_replace(string,replacement,start,length)

提示和注释

注释:如果 start 是负数且 length 小于等于 start,则 length
0。
例子

<?php
echo substr_replace(“Hello world”,”earth”,6);
?>

输出:
Hello earth

参数

在本例中,我们将演示带有数组和 count 变量的 str_replace() 函数:

描述

 代码如下

string必需。规定要检查的字符串。replacement必需。规定要插入的字符串。start

<?php
$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

正数 – 在第 start 个偏移量开始替换 负数 – 在从字符串结尾的第 start
个偏移量开始替换 0 – 在字符串中的第一个字符处开始替换 charlist

补充:count如果被指定,它的值将被设置为替换发生的次数。

可选。规定要替换多少个字符。

二、substr_replace(string,replacement,start,length)

正数 – 被替换的字符串长度 负数 – 从字符串末端开始的被替换字符数 0 –
插入而非替换 提示和注释

作用:substr_replace() 函数把字符串的一部分替换为另一个字符串。

注释:如果 start 是负数且 length 小于等于 start,则 length
0。例子 复制代码 代码如下: 输出: Hello
earth

参数 描述
string 必需。规定要检查的字符串。
replacement 必需。规定要插入的字符串。
start 必需。规定在字符串的何处开始替换。

■正数 – 在第 start 个偏移量开始替换
■负数 – 在从字符串结尾的第 start 个偏移量开始替换
■0 – 在字符串中的第一个字符处开始替换
 
charlist 可选。规定要替换多少个字符。

■正数 – 被替换的字符串长度
■负数 – 从字符串末端开始的被替换字符数
■0 – 插入而非替换
 

例子

 代码如下

<?php
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 使用后向引用紧跟数值原文

 代码如下

<?php
$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()中使用基于索引的数组

 代码如下

<?php
$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() 例子:取得搜索字符串的成分

 代码如下

<?php
// split the phrase by any number of commas or space characters,
// which include ” “, r, t, n
and f
$keywords = preg_split (“/[s,]+/”,
“hypertext language, programming”);
?>

例 1673. 将字符串分割成字符

 代码如下

<?php
$str = ‘string’;
$chars = preg_split(‘//’, $str, -1, PREG_SPLIT_NO_EMPTY);
print_r($chars);
?>

例 1674. 将字符串分割为匹配项及其偏移量

 代码如下

<?php
$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

 代码如下

<?php
print_r(str_split(“Hello”));
?>

输出:

Array
(
[0] => H
[1] => e
[2] => l
[3] => l
[4] => o
)

例子 2

 代码如下

<?php
print_r(str_split(“Hello”,3));
?>

输出:

Array
(
[0] => Hel
[1] => lo
)

发表评论

电子邮件地址不会被公开。 必填项已用*标注