Maison > Article > développement back-end > Utilisation du modèle de correspondance le plus court dans les expressions régulières
Supposons que vous ayez un morceau de texte et que vous souhaitiez uniquement faire correspondre le plus court possible, pas le plus long. Cet article vous présente principalement les informations pertinentes sur l'utilisation du modèle de correspondance le plus court dans les expressions régulières.
Préface
Récemment, j'ai voulu utiliser des expressions régulières pour récupérer quelque chose dans une page Web. Le contenu n'était pas compliqué mais de nombreux problèmes sont survenus. . Pas grand chose à dire ci-dessous, jetons un œil à l'introduction détaillée :
Lorsque nous utilisons des expressions régulières pour faire correspondre le début et la fin d'une balise, comme faire correspondre les balises d'ouverture et de fermeture de h1 dans 4a249f0d628e2318394fd9b75b4636b1hello world473f0a7621bec819994bb5020d29372a
Beaucoup de gens peuvent écrire comme ça
/<.*h1>/g
Mais est-ce vraiment bien ?
Parce que le caractère * correspondant correspond à zéro ou plusieurs du caractère précédent, et qu'il s'agit d'une correspondance gourmande
, vous obtiendrez donc le résultat suivant.
Évidemment, ce n'est pas ce que nous voulons, alors comment changer la correspondance gourmande en correspondance minimale,
/<.*?h1>/g
La méthode d'écriture ci-dessus est suffisante, comme indiqué ci-dessous :
En fait, le principe devrait être très simple, car ? est aussi une correspondance gourmande, et ne peut correspondre qu'à 0 à 1,
, donc il se terminera lorsqu'il correspondra au premier, empêchant ainsi * de faire correspondre plusieurs correspondances gourmandes.
Le contenu ci-dessus utilise le modèle de correspondance le plus court dans les expressions régulières. J'espère qu'il pourra aider tout le monde.
Recommandations associées :
Collection d'expressions régulières PHP
Explication détaillée des fonctions couramment utilisées dans les expressions régulières PHP
Résumé des expressions régulières couramment utilisées dans les formulaires 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!