PHP如何将给定子串换成*号(大小写敏感)

在之前的文章《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”值,并分别将它们替换为*号。所以输出结果为:

0.png

了解了如何区分大小写的将给定子串换成*号。下面我们来了解一下实现这个功能的函数str_replace()

str_replace($search,$replace,$string,$count)函数可以区分大小写的替换字符串中的一些字符;该函数接受三个必需参数$search(要搜索的子串)、$replace(进行替换的值)、$string(字符串)和一个可省略的参数$count(一个变量)。

通过上面的例子,前3个必需参数我们知道它们的意思,下面来聊聊可省略的参数$count

参数$count的值需要设置为一个变量,用于统计并返回执行替换的次数。简单来说,设置了参数$count,就可以知道一共执行了几次替换。

下面通过代码示例来看看参数$count的用法。

<?php
header("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>";
?>

输出结果:

3.png

好了就说到这里了,有其他想知道的,可以点击这个哦。→ →php视频教程

最后给大家推荐阅读一个经典课程《PHP字符串处理(玉女心经版)》,免费的~快来学习啊!

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » PHP如何将给定子串换成*号(大小写敏感)