Maison > développement back-end > tutoriel php > Expression régulière PHP : Comment extraire des caractères spécifiques d'une chaîne vers une sous-chaîne à la fin

Expression régulière PHP : Comment extraire des caractères spécifiques d'une chaîne vers une sous-chaîne à la fin

PHPz
Libérer: 2023-06-22 17:36:02
original
1208 Les gens l'ont consulté

L'expression régulière est un puissant outil de traitement de texte qui peut être utilisé pour faire correspondre des chaînes avec des modèles spécifiques. En PHP, les expressions régulières sont couramment utilisées pour le traitement des chaînes, la validation des formulaires, la recherche et le remplacement, etc. Cet article va vous montrer comment utiliser les expressions régulières de PHP pour extraire un caractère spécifique d'une chaîne jusqu'à la fin d'une sous-chaîne.

Prenons d’abord un exemple. Supposons que nous ayons une chaîne $str qui contient plusieurs URL commençant par « http:// » et que nous souhaitions extraire ces URL et les stocker dans un tableau.

L'utilisation d'expressions régulières peut atteindre cet objectif. Les étapes spécifiques sont les suivantes :

  1. Utilisez la fonction preg_match_all() pour trouver toutes les URL correspondantes.
preg_match_all('/http://[^s]+/', $str, $matches);
Copier après la connexion

Parmi eux, entre '/' et '/' se trouve le modèle d'expression régulière, qui définit le modèle de chaîne à rechercher. Dans ce cas, le modèle est "commence par 'http://' suivi de caractères qui ne sont pas des espaces".

  1. Stocke les URL correspondantes.
$urls = $matches[0];
Copier après la connexion

Here $matches est un tableau qui contient toutes les sous-chaînes correspondantes et leurs sous-groupes (le cas échéant). Parce que nous utilisons un groupe de capture, nous pouvons obtenir l'URL souhaitée à partir du tableau $matches.

Maintenant, le tableau $urls contient toutes les URL commençant par "http://". Nous pouvons parcourir ce tableau et effectuer un traitement sur chaque URL, comme la valider, la remplacer ou la stocker dans la base de données.

Ce qui suit est le code complet :

<?php
$str = "Visit my website at http://www.example.com 
       or http://www.google.com for more information.";

preg_match_all('/http://[^s]+/', $str, $matches);

$urls = $matches[0];

foreach ($urls as $url) {
  echo $url . "<br>";
}
?>
Copier après la connexion

Dans l'exemple ci-dessus, nous envoyons toutes les URL correspondantes au navigateur. Bien entendu, vous pouvez également les stocker dans un tableau ou même les stocker dans une base de données pour une utilisation ultérieure.

Summary

Les expressions régulières sont un puissant outil de traitement de texte largement utilisé en PHP. Dans cet article, nous vous avons montré comment extraire un caractère spécifique à la fin d’une sous-chaîne d’une chaîne à l’aide des expressions régulières de PHP. Plus précisément, nous avons utilisé les fonctions preg_match() et preg_match_all(), ainsi que certains modèles d'expressions régulières courants, tels que "commence par 'http://' suivi d'un caractère qui n'est pas un espace". Lorsque vous devez extraire une sous-chaîne d'un modèle spécifique à partir d'une chaîne, les expressions régulières sont un outil très utile qui peut vous aider à atteindre rapidement votre objectif.

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal