Dans le processus de développement Web, nous avons souvent besoin d'extraire des liens d'images à partir d'articles pour afficher des images ou les stocker localement. À l’heure actuelle, les expressions régulières deviennent un outil important. Cet article expliquera comment utiliser les expressions régulières PHP pour faire correspondre les liens d'images et réalisera des exercices pratiques à l'aide d'exemples de code.
1. Règles de correspondance pour les liens d'images
Dans les pages Web très complexes et modifiables, les formats des liens d'images varient. Voici quelques formats de liens d'image courants :
# 🎜🎜# Sur la base du format ci-dessus, nous pouvons résumer une règle générale de correspondance comme suit :
Parmi eux, une partie de la signification de l'expression régulière est la suivante : # 🎜🎜#
src=['"](.*?(?:gif|jpg|jpeg|bmp|png))['"] : correspond à la valeur de l'attribut src et la valeur de l'attribut doit être entourée entre guillemets doubles Ou entre guillemets simples, plusieurs suffixes sont pris en charge en même temps.
Utilisez la fonction preg_match pour faire correspondre un seul lien d'image
La fonction preg_match est utilisée pour effectuer une correspondance d'expression régulière sur une seule chaîne. Ce qui suit est un code PHP permettant de faire correspondre un lien d'image unique :<?php $str = '<img src="../images/picture.jpg" class="picture" width="100" height="100">'; $pattern = '/<img.*?src=['"](.*?(?:gif|jpg|jpeg|bmp|png))['"].*?>/i'; preg_match($pattern, $str, $matches); echo $matches[1]; ?>
# 🎜🎜#
Utilisez la fonction preg_match_all pour faire correspondre plusieurs liens d'imageLa fonction preg_match_all est utilisée pour effectuer une correspondance d'expression régulière sur un ensemble de chaînes. Ce qui suit est un code PHP permettant de faire correspondre plusieurs liens d'images :
<?php $str = ' <img src="../images/picture.jpg" class="picture" width="100" height="100"> <img src="http://www.example.com/images/picture.jpg"> <img src="http://www.example.com/images/picture.png"> <img src="http://www.example.com/images/picture.gif"> '; $pattern = '/<img.*?src=['"](.*?(?:gif|jpg|jpeg|bmp|png))['"].*?>/i'; preg_match_all($pattern, $str, $matches); print_r($matches[1]); ?>
[0] => ../images/picture.jpg [1] => http://www.example.com/images/picture.jpg [2] => http://www.example.com/images/picture.png [3] => http://www.example.com/images/picture.gif
3. Résumé
Cet article explique comment utiliser les expressions régulières PHP pour faire correspondre les liens d'images et fournit un exemple de code pour des exercices pratiques. Dans le développement réel, nous pouvons modifier les règles de correspondance des expressions régulières selon nos besoins. Dans le même temps, vous pouvez également utiliser le lien d'image correspondant pour des opérations telles que l'affichage, le téléchargement ou le stockage d'images.
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!