Il modulo Regular Expressions(RE) specifica un insieme di stringhe (pattern) che corrisponde.
Per capire l’analogia RE, i MetaCharacters sono utili, importanti e saranno usati nelle funzioni del modulo re.
Ci sono un totale di 14 metacaratteri e saranno discussi man mano che seguiranno nelle funzioni:

\ 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
  • Funzione compile()
    Le espressioni regolari sono compilate in oggetti pattern, che hanno metodi per varie operazioni come la ricerca di pattern match o l’esecuzione di sostituzioni di stringhe.
Python

import re
p = re.compile('')
print(p.findall("Aye, said Mr. Gibenson Stark"))



Output:


Comprensione dell’uscita:
La prima occorrenza è ‘e’ in “Aye” e non ‘A’, essendo Case Sensitive.
La prossima occorrenza è ‘a’ in “said”, poi ‘d’ in “said”, seguita da ‘b’ ed ‘e’ in “Gibenson”, l’ultima ‘a’ corrisponde a “Stark”.
Il metacarattere backslash ‘\’ ha un ruolo molto importante poiché segnala varie sequenze. Se il backslash deve essere usato senza il suo significato speciale come metacarattere, usate ‘\’

La classe set corrisponderà a qualsiasi carattere di spazio bianco, ‘,’, o,’.

Output:


Output:


Python

import re
p = re.compile('ab*')
print(p.findall("ababbaabbb"))



Output:


Comprensione dell’uscita:
Il nostro RE è ab*, che ‘a’ accompagnato da un qualsiasi numero di ‘b’, a partire da 0.
Output ‘ab’, è valido a causa della singola ‘a’ accompagnata dalla singola ‘b’.
Output ‘abb’, è valido per singola ‘a’ accompagnata da 2 ‘b’.
Output ‘a’, è valido a causa di singolo ‘a’ accompagnato da 0 ‘b’.
Output ‘abbb’, è valido a causa della singola ‘a’ accompagnata da 3 ‘b’.

  • Funzione split()
    Si divide la stringa per le occorrenze di un carattere o un pattern, trovando quel pattern, i caratteri rimanenti della stringa sono restituiti come parte della lista risultante.
    Sintassi :
 re.split(pattern, string, maxsplit=0, flags=0)

Il primo parametro, pattern denota l’espressione regolare, stringa è la stringa data in cui il pattern sarà cercato e in cui avviene la divisione, maxsplit se non fornito è considerato zero ‘0’, e se qualsiasi valore diverso da zero è fornito, allora si verifica al massimo quella divisione. Se maxsplit = 1, allora la stringa verrà divisa una sola volta, ottenendo una lista di lunghezza 2. Le bandiere sono molto utili e possono aiutare ad abbreviare il codice, non sono parametri necessari, ad esempio: flags = re.IGNORECASE, In questa divisione, il caso verrà ignorato.

Output:


Output:


  • Funzione sub()
    Sintassi:
 re.sub(pattern, repl, string, count=0, flags=0)

Il ‘sub’ nella funzione sta per SubStringa, un certo modello di espressione regolare viene cercato nella stringa data (3° parametro), e quando trova il modello di sottostringa viene sostituito da repl (2° parametro), count controlla e mantiene il numero di volte che questo accade.

Output

S~*ject has ~*er booked alreadyS~*ject has Uber booked alreadyS~*ject has Uber booked alreadyBaked Beans & Spam
  • Funzione subn()
    Sintassi:
 re.subn(pattern, repl, string, count=0, flags=0)

subn() è simile a sub() in tutti i modi, tranne che nel modo di fornire l’output. Restituisce una tupla con il conteggio del totale delle sostituzioni e la nuova stringa piuttosto che solo la stringa.

Output

('S~*ject has Uber booked already', 1)('S~*ject has ~*er booked already', 2)Length of Tuple is: 2S~*ject has ~*er booked already
  • Funzione escape()
    Sintassi:
re.escape(string)

Ritorna la stringa con tutti i caratteri non alfanumerici retroceduti, questo è utile se si vuole far corrispondere una stringa letterale arbitraria che può avere metacaratteri di espressione regolare in essa.

Python

import re
print(re.escape("This is Awseome even 1 AM"))
print(re.escape("I Asked what is this , he said \t ^WoW"))



Output

This\ is\ Awseome\ even\ 1\ AMI\ Asked\ what\ is\ this\ \,\ he\ said\ \ \ \^WoW

Questo articolo è stato contribuito da Piyush Doorwar. Se ti piace GeeksforGeeks e vuoi contribuire, puoi anche scrivere un articolo usando contribute.geeksforgeeks.org o inviare il tuo articolo a [email protected]. Vedi il tuo articolo apparire sulla pagina principale di GeeksforGeeks e aiuta altri Geek.
Si prega di scrivere commenti se trovi qualcosa di errato, o vuoi condividere ulteriori informazioni sull’argomento discusso sopra.

Attenzione geek! Rafforza le tue fondamenta con il corso Python Programming Foundation e impara le basi.

Per cominciare, i tuoi preparativi per il colloquio Migliora i tuoi concetti di Data Structures con il corso Python DS.

Article Tags :

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.