Maison > Article > développement back-end > PHP renvoie la chaîne depuis la dernière occurrence d'une chaîne jusqu'à la fin d'une autre chaîne
En PHP, si vous devez renvoyer une sous-chaîne de la dernière occurrence d'une chaîne à la fin d'une autre chaîne, vous pouvez utiliser la fonction intégrée strrchr() pour y parvenir. La fonction strrchr() trouvera la dernière occurrence de la chaîne spécifiée dans la chaîne cible et renverra la partie de la chaîne à la fin. Grâce à cette fonction, vous pouvez facilement intercepter le paragraphe de chaîne requis et améliorer l'efficacité et la lisibilité du code. Ci-dessous, nous présenterons en détail comment utiliser la fonction strrchr() en PHP pour réaliser cette fonction.
Obtenir la chaîne depuis la dernière occurrence de la chaîne jusqu'à la fin en PHP
Question : Comment utiliser php pour obtenir la sous-chaîne d'une chaîne en commençant par la dernière occurrence d'une autre chaîne jusqu'à la fin ?
Solution :
Il existe deux méthodes principales en PHP pour obtenir la sous-chaîne depuis la dernière occurrence d'une chaîne jusqu'à la fin :
1. Utilisez la fonction strrpos()
strrpos()
函数返回一个字符串在另一个字符串中最后一次出现的位置。我们可以使用此位置和 substr()
Fonction pour extraire la sous-chaîne :
<?php $string = "Hello World, welcome to the world of PHP!"; $substring = "world"; // 获取 "world" 在 $string 中最后一次出现的位置 $pos = strrpos($string, $substring); // 如果字符串中存在 "world",则提取子字符串 if ($pos !== false) { $subString = substr($string, $pos); echo $subString; // 输出 "world of PHP!" } else { echo "Substring not found."; } ?>
2. Utilisez la fonction preg_match()
La fonctionpreg_match()
peut effectuer des recherches expressions régulières. Nous pouvons utiliser des expressions régulières pour faire correspondre la dernière occurrence d'une sous-chaîne dans une chaîne :
<?php $string = "Hello World, welcome to the world of PHP!"; $pattern = "/.*$substring$/"; // 执行正则表达式搜索并获取匹配项 preg_match($pattern, $string, $matches); // 如果找到匹配项,则提取子字符串 if (isset($matches[0])) { $subString = $matches[0]; echo $subString; // 输出 "world of PHP!" } else { echo "Substring not found."; } ?>
Considérations relatives aux performances :
La fonctionstrrpos()
fonctionne généralement mieux que la fonction strrpos()
函数的性能通常优于 preg_match()
函数,因为它不需要执行正则表达式匹配。但是,preg_match()
car elle n'a pas besoin d'effectuer une correspondance d'expression régulière. Cependant, la fonction
Bonnes pratiques :
===
或 !==
运算符严格比较 $pos
的值,以避免误将 0
视为 false
Utilisez preg_replace()
Pensez à utiliser la fonction Autres méthodes :
En plus des méthodes ci-dessus, il existe d'autres méthodes pour obtenir la sous-chaîne de la dernière occurrence de la chaîne jusqu'à la fin, par exemple :
$string[$pos:]
Utilisez le découpage de chaînes (array_slice()
Utilisez la fonction 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!