3 méthodes de remplacement : 1. Utilisez substr_replace() pour remplacer tous les caractères à partir du début de la chaîne, la syntaxe est "substr_replace (chaîne d'origine, spécifiez la valeur de remplacement, 0)". 2. Utilisez str_replace() pour remplacer tous les caractères, la syntaxe est "str_replace (chaîne d'origine, valeur de remplacement spécifiée, chaîne d'origine)". 3. Utilisez str_ireplace() pour remplacer tous les caractères, la syntaxe est "str_ireplace (chaîne d'origine, valeur de remplacement spécifiée, chaîne d'origine)".
L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 8.1, ordinateur DELL G3
Méthode 1 : Utiliser la fonction substr_replace()
substr_replace() pour remplacer une partie du chaîne avec une autre chaîne.
substr_replace(string,replacement,start,length)
substr_replace() Remplace la sous-chaîne qualifiée par les paramètres start et facultatifs length dans une copie de string string en utilisant le remplacement.
Si start est un nombre positif, le remplacement commencera à partir de la position de départ de la chaîne. Si start est négatif, le remplacement commencera à la position de départ à partir du bas de la chaîne.
Si le paramètre de longueur est défini et est un nombre positif, il représente la longueur de la sous-chaîne remplacée dans la chaîne. S'il est défini sur un nombre négatif, il représente le nombre de caractères de la fin de la sous-chaîne à remplacer à partir de la fin de la chaîne. Si ce paramètre n'est pas fourni, la valeur par défaut est strlen(string) (la longueur de la chaîne). Bien sûr, si la longueur est 0, alors la fonction de cette fonction est d'insérer un remplacement à la position de départ de la chaîne.
paramètre | description |
---|---|
chaîne | obligatoire. Spécifie la chaîne à vérifier. |
remplacement | obligatoire. Spécifie la chaîne à insérer. |
start | Obligatoire. Spécifie où dans la chaîne commencer le remplacement.
|
longueur | Facultatif. Spécifie le nombre de caractères à remplacer. La valeur par défaut est la même que la longueur de la chaîne.
|
Exemple : Remplacer tout caractères dans la chaîne
Il vous suffit de définir le troisième paramètre de la fonction sur 0, et le troisième paramètre est défini sur la longueur de la chaîne d'origine ou omis pour remplacer tous les caractères
<?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>"; ?>
Méthode 2/Méthode 3 : fonctions str_ireplace() et str_replace()
str_ireplace() et str_replace utilisent toutes deux de nouvelles chaînes pour remplacer les sous-chaînes spécifiées dans les chaînes d'origine. Si les sous-chaînes qui doivent être remplacées sont les chaînes d'origine, vous pouvez les remplacer. sous-chaînes dans les chaînes d'origine. Tous les caractères.
La syntaxe de str_ireplace() et str_replace est similaire, la différence est que str_replace est sensible à la casse, str_ireplace() n'est pas sensible à la casse
str_replace(find,replace,string,count) str_ireplace(find,replace,string,count)
Paramètres | Description |
---|---|
find | Requis. Spécifie la valeur à rechercher. |
remplacer | Obligatoire. Spécifie la valeur pour remplacer la valeur dans find. |
string | Obligatoire. Spécifie la chaîne à rechercher. |
compte | facultatif. Variable comptant le nombre de substitutions. |
示例:替换字符串中的所有字符
只需要将第一个参数设置为原字符串值即可。
<?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视频教程》
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!