在php中替换字符串中的所有字符之详细解析

在php中替换字符串中的所有字符之详细解析来了,3种替换方法奉上:


1、用substr_replace()从字符串头部开始替换全部字符,语法“substr_replace(原字符串,指定替换值,0)”。

2、用str_replace()替换全部字符,语法“str_replace(原字符串,指定替换值,原字符串)”。

3、用str_ireplace()替换全部字符,语法“str_ireplace(原字符串, 指定替换值, 原字符串)”。


在php中替换字符串中的所有字符之详细解析


本文适用于windows7系统、PHP8.1版、DELL G3电脑


在php中替换字符串中的所有字符之详细解析


方法1:利用substr_replace()函数


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


substr_replace(string,replacement,start,length)


●  substr_replace() 在字符串 string 的副本中将由 start 和可选的 length 参数限定的子字符串使用 replacement 进行替换。


●  如果 start 为正数,替换将从 string 的 start 位置开始。如果 start 为负数,替换将从 string 的倒数第 start 个位置开始。


●  如果设定了 length 参数并且为正数,就表示 string 中被替换的子字符串的长度。如果设定为负数,就表示待替换的子字符串结尾处距离 string 末端的字符个数。如果没有提供此参数,那么默认为 strlen(string)(字符串的长度)。当然,如果 length 为 0,那么这个函数的功能为将 replacement 插入 string 的 start 位置处。


参数描述


示例:替换字符串中的所有字符


只需要将该函数的第三个参数设置为0,第三个参数设置为原字符串长度或省略即可替换全部字符


<?php
header('content-type:text/html;charset=utf-8');   
$str = 'hello world!';
echo "原字符串:".$str."<br><br>";
$replace = 'ABCDEFGHIJKL';
echo "替换全部字符字符:".substr_replace($str, $replace,0)."<br>";
?>


输出结果


方法2/方法3:str_ireplace() 和 str_replace() 函数


str_ireplace() 和 str_replace 都使用新的字符串替换原来字符串中指定的子字符串,如果需要替换的子串就是原字符串,则可替换原字符串中的所有字符。


str_ireplace() 和 str_replace的语法是相似的,区别在于str_replace 区分大小写,str_ireplace() 不区分大小写


str_replace(find,replace,string,count)
str_ireplace(find,replace,string,count)


参数描述


示例:替换字符串中的所有字符


只需要将第一个参数设置为原字符串值即可。


<?php
header('content-type:text/html;charset=utf-8');   
$str = 'hello world!';
echo "原字符串:".$str."<br><br>";
$replace = 'ABCDEFGHIJKL';
echo "替换全部字符字符:".str_replace($str, $replace, $str)."<br>";
echo "替换全部字符字符:".str_ireplace($str, $replace, $str)."<br>";
?>


输出结果


扩展知识:替换字符串还可利用正则替换函数preg_replace() 和preg_filter()


preg_replace() 和preg_filter()函数都可以执行正则表达式的搜索和替换,不同的是 preg_filter() 函数只返回匹配成功的结果,而 preg_replace() 返回所有结果,不管是否匹配成功。


preg_replace() 和preg_filter()函数的语法类似:


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


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


参数说明如下:


●  $pattern:要搜索的模式,可以使一个字符串或字符串数组;


●  $replacement:用于替换的字符串或字符串数组。如果这个参数是一个字符串,并且 $pattern 是一个数组,那么所有的模式都使用这个字符串进行替换。如果 $pattern 和 $replacement 都是数组,每个 $pattern 使用 $replacement 中对应的元素进行替换。如果 $replacement 中的元素比 $pattern 中的少,多出来的 $pattern 使用空字符串进行替换。


●  $subject:要进行搜索和替换的字符串或字符串数组,如果 $subject 是一个数组,搜索和替换回在 $subject 的每一个元素上进行, 并且返回值也会是一个数组。


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


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


示例:


preg_filter()和preg_replace()利用正则来替换字符串


<?php
header('content-type:text/html;charset=utf-8');
$subject = array('1', 'a', '2', 'b', '3', 'A', 'B', '4'); 
$pattern = array('/\d/', '/[a-z]/', '/[1a]/'); 
$replace = array('A:$0', 'B:$0', 'C:$0'); 
  
echo "preg_filter 返回值:\n";
var_dump(preg_filter($pattern, $replace, $subject)); 
  
echo "preg_replace 返回值:\n";
var_dump(preg_replace($pattern, $replace, $subject)); 
?>


输出结果


以上就是关于在php中替换字符串中的所有字符之详细解析,翼速应用平台内有更多相关资讯,欢迎查阅!


我来说两句

0 条评论

推荐阅读

  • 响应式布局CSS媒体查询设备像素比介绍

    构建响应式网站布局最常见的是流体网格,灵活调整大小的站点布局技术,确保用户在使用的幕上获得完整的体验。响应式设计如何展示富媒体图像,可以通过以下几种方法。

    admin
  • 提升网站的性能快速加载的实用技巧

    网站速度很重要,快速加载的网站会带来更好的用户体验、更高的转化率、更多的参与度,而且在搜索引擎排名中也扮演重要角色,做SEO,网站硬件是起跑线,如果输在了起跑线,又怎么跟同行竞争。有许多方法可提升网站的性能,有一些技巧可以避免踩坑。

    admin
  • 织梦CMS TAG页找不到标签和实现彩色标签解决方法

    织梦cms是我们常见的网站程序系统的一款,在TAG标签中常常遇到的问题也很多。当我们点击 tags.php 页的某个标签的时候,有时会提示:“系统无此标签,可 能已经移除!” 但是我们检查程序后台,以及前台显示页面。这个标签确实存在,如果解决这个问题那?

    admin
  • HTML关于fieldset标签主要的作用

    在前端开发html页面中常用的标签很多,今天为大家带来的是关于HTML中fieldset标签主要的作用说明,根据技术分析HTML

    admin

精选专题