在之前的文章《php怎么将某长度的子串换成*号》中我们介绍了一种字符串替换的方法。这次我们再介绍一种进行字符串替换的方法,看看这种方法如何将给定子串换成*号。
上文介绍的方法是给出替换开始的位置和替换长度,来进行字符串替换。本篇文章给大家介绍另一种方法:直接给出需要替换的子串来进行替换,因为是直接设置替换子串,会有大小写的问题,也就分为两种情况:大小写敏感和大小写不敏感。今天先介绍对大小写敏感的替换方法。
我们来看看下面一个例子:
<?php$str = 'hello,world,hello,world';$replace = '*';$search1 = 'hello';$search2 = 'world';echo str_replace($search1, $replace, $str)."<br>";echo str_replace($search2, $replace, $str)."<br>";?>
观察一下上面的代码,我们需要将字符串$str中的“hello”和“world”值替换成*号;而$str字符串“hello,world,hello,world”中分别有两种替换子串,区别只在于首字母是否大小。
因为使用的是str_replace()函数来进行字符串替换,该函数对大小写敏感,区分大小写,因此只在字符串$str中搜索“hello”和“world”值,并分别将它们替换为*号。所以输出结果为:
了解了如何区分大小写的将给定子串换成*号。下面我们来了解一下实现这个功能的函数str_replace()。
str_replace($search,$replace,$string,$count)函数可以区分大小写的替换字符串中的一些字符;该函数接受三个必需参数$search(要搜索的子串)、$replace(进行替换的值)、$string(字符串)和一个可省略的参数$count(一个变量)。
通过上面的例子,前3个必需参数我们知道它们的意思,下面来聊聊可省略的参数$count。
参数$count的值需要设置为一个变量,用于统计并返回执行替换的次数。简单来说,设置了参数$count,就可以知道一共执行了几次替换。
下面通过代码示例来看看参数$count的用法。
<?phpheader("content-type: text/html;charset=utf-8"); //设置字符编码$str = 'hello,world,hello,world';$replace = '*';$search1 = 'hello';$search2 = 'world';$search3 = ',';echo str_replace($search1, $replace, $str,$i)."<br>";echo "一共执行了 $i"." 次替换<br><br>";echo str_replace($search2, $replace, $str,$i)."<br>";echo "一共执行了 $i"." 次替换<br><br>";echo str_replace($search3, $replace, $str,$i)."<br>";echo "一共执行了 $i"." 次替换<br>";?>
输出结果:
好了就说到这里了,有其他想知道的,可以点击这个哦。→ →php视频教程
最后给大家推荐阅读一个经典课程《php字符串处理(玉女心经版)》,免费的~快来学习啊!
以上就是php如何将给定子串换成*号(大小写敏感)的详细内容。