Maison > Article > développement back-end > Pratique des expressions régulières PHP : faire correspondre les liens d'images
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 :
593a1d649561360aa061c5401855766b
98dd82fa3d6b28dd443622429262845d
f841aa4405e31c5b7d83f58c421587be
0febb59b8ac7baa071e2650125284b34
# 🎜🎜# 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 : # 🎜🎜#1d0a94b69819f080670a8fe502661b4a : correspond à la balise a1f02c36ba31691bcfe87b2722de723b et la balise peut contenir d'autres attributs.
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!