Maison >développement back-end >Tutoriel Python >Comment faire correspondre les caractères points littéraux dans les adresses e-mail à l'aide d'expressions régulières ?

Comment faire correspondre les caractères points littéraux dans les adresses e-mail à l'aide d'expressions régulières ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-08 05:38:01503parcourir

How to Match Literal Dot Characters in Email Addresses Using Regular Expressions?

Utilisation d'expressions régulières pour identifier les caractères point (.) dans les adresses e-mail

Dans les scénarios d'analyse de données, il est souvent nécessaire d'extraire des éléments spécifiques à partir de chaînes, telles que des adresses e-mail. Les expressions régulières offrent un outil puissant pour de telles tâches.

Correspondance des caractères littéraux à points

Le point (.) est un métacaractère dans les expressions régulières, ce qui signifie qu'il représente n'importe quel caractère. Cependant, pour faire correspondre un point littéral dans une chaîne brute Python (notée r"" ou r''), il doit être échappé comme r".".

Par exemple, considérons la chaîne suivante :

"blah blah blah [email protected] blah blah"

Pour extraire l'adresse e-mail, qui comprend un point littéral, nous pouvons utiliser l'expression régulière suivante :

r"\b\w+\.\w+@\w+\.\w+"

Répartition de la Regex :

  • b : correspond à la limite d'un mot (c'est-à-dire le début ou la fin d'un mot).
  • w : correspond à un ou plusieurs caractères de mot (par exemple, des lettres ou des chiffres).
  • . : correspond à un point littéral (point).
  • w : correspond à nouveau à un ou plusieurs caractères de mot.
  • @ : correspond au symbole at (@) dans les adresses e-mail.
  • w : correspond à un ou plusieurs caractères de mot pour le nom de domaine.
  • . : correspond à un point littéral (point) séparant le nom de domaine et le suffixe.
  • w : correspond à un ou plusieurs caractères de mot pour le suffixe de domaine. .

En utilisant cette expression régulière, nous pouvons extraire l'adresse e-mail de la chaîne donnée :

import re

text = "blah blah blah [email protected] blah blah"
email = re.findall(r"\b\w+\.\w+@\w+\.\w+", text)
print(email)  # Output: ['[email protected]']

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