php str_replace替换指定次数的方法详解
实例
把字符串"Helloworld!"中的字符"world"替换为"Shanghai":
PHPstr_replace方法,替换字符串
定义和用法
str_replace()函数替换字符串中的一些字符(区分大小写)。
该函数必须遵循下列规则:
- 如果搜索的字符串是一个数组,那么它将返回一个数组。
- 如果搜索的字符串是一个数组,那么它将对数组中的每个元素进行查找和替换。
- 如果同时需要对某个数组进行查找和替换,并且需要执行替换的元素少于查找到的元素的数量,那么多余的元素将用空字符串进行替换。
- 如果是对一个数组进行查找,但只对一个字符串进行替换,那么替代字符串将对所有查找到的值起作用。
注释:该函数是区分大小写的。请使用str_ireplace()函数执行不区分大小写的搜索。
注释:该函数是二进制安全的。
语法
str_replace(find,replace,string,count)
参数 | 描述 |
---|---|
find | 必需。规定要查找的值。 |
replace | 必需。规定替换 find 中的值的值。 |
string | 必需。规定被搜索的字符串。 |
count | 可选。一个变量,对替换数进行计数。 |
技术细节
返回值: | 返回带有替换值的字符串或数组。 |
---|---|
PHP版本: | 4+ |
更新日志: | 在PHP5.0中,新增了 count 参数。 在PHP4.3.3之前,该函数的 find 和 replace 参数都为数组时将会遇到麻烦,会引起空的 find 索引在内部指针没有更换到 replace 数组上时被忽略。新的版本不会有这个问题。 自PHP4.0.5起,大多数参数可以是一个数组。 |
更多实例
实例1
使用带有数组和count变量的str_replace()函数:
结果
Array([0]=>blue[1]=>pink[2]=>green[3]=>yellow)
Replacements:1
实例2
使用带有需要替换的元素少于查找到的元素的str_replace()函数:
结果
Array([0]=>B[1]=>[2]=>!)
以下是其它网友补充的资料
aBc[1]=>Bac[2]=>cBa) echo$count;//3共替换了3次 ?>
使用str_replace来替换字符串比较方便,但所有匹配search的值都会被替换为replace的值。如果指想替换指定次数,这个方法就不能实现了。
例如:user_order_list替换为user/order_list
替换指定次数的方法,可以使用正则preg_replace方法来实现。
$v){ $search[$k]='`'.preg_quote($search[$k],'`').'`'; } }else{ $search='`'.preg_quote($search,'`').'`'; } returnpreg_replace($search,$replace,$subject,$limit); } ?>
例子:
aBbc[1]=>Bbac[2]=>cBba) ?>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持毛票票!