Maison >développement back-end >tutoriel php >Quelle est la différence entre les quantificateurs ` ` et `*` dans les expressions régulières ?

Quelle est la différence entre les quantificateurs ` ` et `*` dans les expressions régulières ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-22 18:25:29667parcourir

What's the Difference Between the ` ` and `*` Quantifiers in Regular Expressions?

Comprendre la différence entre les quantificateurs d'expression régulière Plus ( ) et Star (*)

Dans la fonction preg_match de PHP, les expressions régulières utilisent des quantificateurs, tels que comme plus ( ) et étoile (*), pour spécifier le nombre d'occurrences d'un modèle donné qui doivent correspondre. La différence entre ces deux quantificateurs réside dans leur comportement et les correspondances qu'ils produisent.

Plus ( ) Quantificateur :

  • Correspond à une ou plusieurs occurrences du expression précédente.
  • Est gourmand par défaut, ce qui signifie qu'il correspond à autant de caractères que possible.

Étoile (*) Quantificateur :

  • Correspond à zéro ou plusieurs occurrences de l'expression précédente.
  • Est également gourmand par défaut, mais peut être rendu "non gourmand" en ajoutant un point d'interrogation (?) après le quantificateur.

Exemple : Quantificateurs gourmands ou non gourmands

Considérez l'exemple suivant avec la chaîne "abab":

  • a.*b : Le match gourmand correspondra à "abab" dans son ensemble chaîne.
  • a.*?b : la correspondance non gourmande ne correspondra qu'à la première partie "ab" de la chaîne, ce qui donne deux correspondances.

Rendre les quantificateurs non gourmands

Ajout d'un point d'interrogation (?) après qu'un quantificateur change son comportement de gourmand à non gourmand. Les quantificateurs non gourmands correspondent au moins de caractères possible, conduisant à des résultats différents de ceux des quantificateurs gourmands. Cela peut être utile dans certains scénarios où la correspondance avec le minimum de caractères possible est souhaitée.

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!

Déclaration:
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