Module Regular Expressions(RE) spécifie un ensemble de chaînes de caractères(pattern) qui lui correspond.
Pour comprendre l’analogie RE, les MetaCharacters sont utiles, importants et seront utilisés dans les fonctions du module re.
Il y a un total de 14 métacaractères et seront discutés au fur et à mesure qu’ils suivent dans les fonctions :
\ Used to drop the special meaning of character following it (discussed below) Represent a character class^ Matches the beginning$ Matches the end. Matches any character except newline? Matches zero or one occurrence.| Means OR (Matches with any of the characters separated by it.* Any number of occurrences (including 0 occurrences)+ One or more occurrences{} Indicate number of occurrences of a preceding RE to match.() Enclose a group of REs
- Fonction compile()
Les expressions régulières sont compilées en objets motifs, qui disposent de méthodes pour diverses opérations telles que la recherche de correspondances de motifs ou l’exécution de substitutions de chaînes de caractères.
.
import
re
p
=
re.
compile
(
''
)
print
(p.findall(
"Aye, said Mr. Gibenson Stark"
))
Sortie :
Compréhension de la sortie :
La première occurrence est ‘e’ dans ‘Aye’ et non ‘A’, car elle est sensible à la casse.
L’occurrence suivante est ‘a’ dans « said », puis ‘d’ dans « said », suivi de ‘b’ et ‘e’ dans « Gibenson », le dernier ‘a’ correspond à « Stark ».
Le métacaractère backslash ‘\’ a un rôle très important car il signale diverses séquences. Si la barre oblique inverse doit être utilisée sans sa signification spéciale de métacaractère, utilisez ‘\\\N’
La classe de jeu correspondra à n’importe quel caractère d’espacement, ‘,’, ou,’.’ .
Sortie :
Sortie :
.
import
re
p
=
re.
compile
(
'ab*'
)
print
(p.findall(
"ababbaabbb"
))
Sortie :
Compréhension de la sortie :
Notre RE est ab*, dont ‘a’ accompagné de n’importe quel nombre de ‘b’, en commençant par 0.
La sortie ‘ab’, est valide en raison d’un seul ‘a’ accompagné d’un seul ‘b’.
L’entrée « abb », est valide en raison d’un seul « a » accompagné de 2 « b ».
L’entrée ‘a’, est valide en raison d’un seul ‘a’ accompagné de 0 ‘b’.
Sortie ‘abbb’, est valide en raison de l’unique ‘a’ accompagné de 3 ‘b’.
- Fonction split()
Séparer une chaîne de caractères par les occurrences d’un caractère ou d’un motif, à la recherche de ce motif, les caractères restants de la chaîne sont renvoyés comme faisant partie de la liste résultante.
Syntaxe :
re.split(pattern, string, maxsplit=0, flags=0)
Premier paramètre, pattern désigne l’expression régulière, string est la chaîne donnée dans laquelle le motif sera recherché et dans laquelle le fractionnement se produit, maxsplit si elle n’est pas fournie est considérée comme étant zéro ‘0’, et si toute valeur non nulle est fournie, alors au plus ce nombre de fractionnements se produit. Si maxsplit = 1, alors la chaîne de caractères sera divisée une seule fois, résultant en une liste de longueur 2. Les drapeaux sont très utiles et peuvent aider à raccourcir le code, ils ne sont pas des paramètres nécessaires, par exemple : flags = re.IGNORECASE, Dans cette division, la casse sera ignorée.
Sortie :
Sortie :
- Fonction sub()
Syntaxe :
re.sub(pattern, repl, string, count=0, flags=0)
Le ‘sub’ dans la fonction représente SubString, un certain modèle d’expression régulière est recherché dans la chaîne donnée(3ème paramètre), et lorsqu’il trouve le modèle de sous-chaîne est remplacé par repl(2ème paramètre), count vérifie et maintient le nombre de fois que cela se produit.
Sortie
S~*ject has ~*er booked alreadyS~*ject has Uber booked alreadyS~*ject has Uber booked alreadyBaked Beans & Spam
- Fonction subn()
Syntaxe :
re.subn(pattern, repl, string, count=0, flags=0)
subn() est similaire à sub() en tous points, sauf dans sa façon de fournir la sortie. Il retourne un tuple avec le compte du total de remplacement et la nouvelle chaîne de caractères plutôt que juste la chaîne de caractères.
Sortie
('S~*ject has Uber booked already', 1)('S~*ject has ~*er booked already', 2)Length of Tuple is: 2S~*ject has ~*er booked already
- Fonction escape()
Syntaxe :
re.escape(string)
Retourne la chaîne de caractères avec tous les caractères non alphanumériques mis en arrière, ceci est utile si vous voulez correspondre à une chaîne littérale arbitraire qui peut avoir des métacaractères d’expression régulière en elle.
.
import
re
print
(re.escape(
"This is Awseome even 1 AM"
))
print
(re.escape(
"I Asked what is this , he said \t ^WoW"
))
Sortie
This\ is\ Awseome\ even\ 1\ AMI\ Asked\ what\ is\ this\ \,\ he\ said\ \ \ \^WoW
Cet article est contribué par Piyush Doorwar. Si vous aimez GeeksforGeeks et souhaitez contribuer, vous pouvez également écrire un article en utilisant contribute.geeksforgeeks.org ou envoyer votre article par courrier à [email protected]. Voyez votre article apparaître sur la page principale de GeeksforGeeks et aidez d’autres Geeks.
Veuillez écrire des commentaires si vous trouvez quelque chose d’incorrect, ou si vous voulez partager plus d’informations sur le sujet abordé ci-dessus.
Attention geek ! Renforcez vos fondations avec le cours de base de programmation Python et apprenez les bases.
Pour commencer, vos préparations d’entretien Améliorez vos concepts de structures de données avec le cours Python DS.