Expressions régulières

Mary-Kate Olsen
Libérer: 2024-10-11 10:25:02
original
291 Les gens l'ont consulté

Regular Expressions

Imaginez ceci, vous essayez de vous inscrire sur un site Web, vous entrez votre email et votre mot de passe et vous recevez le message "Le nom d'utilisateur ou le mot de passe que vous avez entré n'est pas valide. Veuillez réessayer. "

Comment l'ordinateur sait-il exactement que le nom d'utilisateur ou le mot de passe que vous avez saisi n'est pas valide ? La réponse est un outil super puissant appelé expression régulière.

Qu'est-ce qu'une expression régulière ?

Une expression régulière, ou regex en abrégé, est un modèle utilisé pour faire correspondre tous les types de caractères dans un texte. La beauté d’une expression régulière est que vous pouvez la concevoir pour rechercher tout ce que vous voulez.

Comment fonctionnent les modèles RegEx

Les modèles RegEx peuvent être aussi simples que la recherche de caractères dans un texte, avec une correspondance complète exacte. Par exemple le motif :

mot de passe

Correspondrait au texte littéral "mot de passe". Ce modèle particulier est sensible à la casse, donc le texte "Mot de passe" ne correspondrait pas puisque le p est en majuscule.

Modèles RegEx complexes

La plupart des sites Web exigent votre mot de passe pour répondre à ces exigences :

  • Doit contenir une lettre minuscule
  • Doit contenir une lettre majuscule
  • Doit contenir un chiffre
  • Doit contenir un caractère autre qu'un mot
  • Doit comporter au moins 8 caractères

Comment pourrions-nous créer un modèle qui recherche ces exigences ? La clé réside dans les métacaractères regex. Les Métacaractères sont des raccourcis prédéfinis pour correspondre à un type de personnage.

Répondre aux exigences

Le métacaractère que nous pouvons utiliser pour répondre à la première exigence est :

[a-z]

Les parenthèses sont utilisées pour indiquer à l'ordinateur où commence et se termine la plage. a-z est utilisé pour rechercher des lettres minuscules dans la plage a-z.


[A-Z]

Semblable à a-z, A-Z recherche toutes les lettres majuscules. Réussir la deuxième exigence.


d

Ce métacaractère satisfait à la troisième exigence, il indique à l'ordinateur de rechercher et de faire correspondre n'importe quel chiffre.


W

Ce métacaractère peut être utilisé pour transmettre le quatrième argument car il correspond à n'importe quel caractère autre qu'un mot. Les caractères des mots incluent n'importe quelle lettre majuscule ou non, n'importe quel chiffre et un trait de soulignement.


{8,}

Les accolades sont des caractères spéciaux qui indiquent à l'ordinateur de faire correspondre ce qui l'a précédé x fois. Si une virgule est incluse entre parenthèses, elle change pour correspondre à ce qui précède au moins x fois. Si un deuxième nombre est placé après la virgule, il reprendra le motif précédé au maximum y fois. Si aucun nombre n’est mis après la virgule, l’ordinateur l’interprète comme un nombre infini.

Mettre tout cela ensemble

À l'aide de quelques métacaractères supplémentaires :

^ Utilisé pour indiquer le début d'un texte
$ Utilisé pour indiquer la fin d'un texte
() Utilisé pour regrouper des expressions
(?=) Utilisé pour anticiper dans un texte
. Correspond à n'importe quel caractère
* Correspond au jeton précédent entre 0 et des temps illimités

Nous pouvons maintenant rassembler notre modèle d'expression régulière de mot de passe. Le résultat final ressemblera à ceci.

^(?=.*[a-z])(?=.*[A-Z])(?=.*d)(?=.*W).{8,}$

Conclusion

À ce stade, vous avez probablement réalisé à quel point les expressions régulières peuvent être puissantes. Ce n'est que la pointe de l'iceberg. Ils peuvent être utilisés pour valider une saisie, faire correspondre du texte, rechercher et remplacer du texte, entre autres.

Si cet article a suscité votre intérêt, je vous recommande de consulter certains des liens ci-dessous.

Pour en savoir plus sur les expressions régulières, consultez ces articles :
Expressions régulières
Expressions régulières Python-Google Education
Pour expérimenter l'écriture de vos propres expressions régulières, visitez regex101

Source du fond d'écran

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!

source:dev.to
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal