Utilizzo delle espressioni regolari

Python:
Utilizzo delle espressioni regolari

Come fare:

Utilizzare le regex in Python comporta l’uso del modulo re, che fornisce un insieme di funzioni per elaborare testo utilizzando espressioni regolari.

Corrispondenza di modelli di base

Per cercare un modello in una stringa, usare re.search(). Restituisce un oggetto corrispondenza quando il modello viene trovato, altrimenti None.

import re

text = "Learn Python programming"
match = re.search("Python", text)
if match:
    print("Modello trovato!")
else:
    print("Modello non trovato.")

Output:

Modello trovato!

Compilazione di espressioni regolari

Per l’uso ripetuto dello stesso modello, compilarlo prima con re.compile() per una migliore prestazione.

pattern = re.compile("Python")
match = pattern.search("Learn Python programming")
if match:
    print("Modello compilato trovato!")

Output:

Modello compilato trovato!

Suddivisione delle stringhe

Per suddividere una stringa in ogni corrispondenza di un modello regex, usare re.split().

result = re.split("\s", "Python is fun")
print(result)

Output:

['Python', 'is', 'fun']

Trovare tutte le corrispondenze

Per trovare tutte le occorrenze non sovrapposte di un modello, usare re.findall().

matches = re.findall("n", "Python programming")
print(matches)

Output:

['n', 'n']

Sostituire testo

Usare re.sub() per sostituire le occorrenze di un modello con una nuova stringa.

replaced_text = re.sub("fun", "awesome", "Python is fun")
print(replaced_text)

Output:

Python is awesome

Librerie di terze parti

Sebbene il modulo re integrato in Python sia potente, le librerie di terze parti come regex offrono più funzionalità e una prestazione migliorata. Per usare regex, installarlo tramite pip (pip install regex) e importarlo nel codice.

import regex

text = "Learning Python 3.8"
match = regex.search(r"Python\s(\d+\.\d+)", text)
if match:
    print(f"Versione trovata: {match.group(1)}")

Output:

Versione trovata: 3.8