Vai al contenuto principale

Tutorial su Regex in Excel: padroneggia il pattern matching con le espressioni regolari

Scopri la potenza delle espressioni regolari (RegEx) per il pattern matching in Excel. La nostra guida completa mostra come standardizzare i dati, estrarre parole chiave ed eseguire manipolazioni avanzate del testo.
Aggiornato 29 set 2026  · 12 min leggi

Scopri con l'IA

ChatGPTClaudePerplexity

Ti è mai capitato di dover standardizzare un elenco di numeri di telefono in formati diversi? O di estrarre parole chiave da campi di testo libero? Entra in scena: RegEx! Le RegEx, abbreviazione di espressioni regolari, sono schemi potenti e flessibili usati per trovare corrispondenze tra stringhe all'interno di blocchi di testo. In questo articolo parleremo della sintassi regex più comune, di come abilitarla in Excel e, infine, di come usarla in modo efficace.

Cosa sono le espressioni regolari?

Le espressioni regolari, spesso abbreviate in "regex" o "regexp", sono un modo per definire uno schema di ricerca, utilizzabile per varie operazioni di manipolazione del testo come ricerca, parsing e/o sostituzione. Le espressioni regolari sono ampiamente usate nella programmazione, negli editor di testo e in altri software per attività che coinvolgono il pattern matching. Il "flavor", o sintassi, delle regex in Excel si basa sul motore di espressioni regolari di .NET.

Espressioni regolari comuni

Le espressioni regolari possono essere raggruppate in base alle loro caratteristiche. Di seguito trovi le espressioni regolari più comuni che incontrerai.

Caratteri letterali

Le espressioni regolari possono contenere caratteri letterali che corrispondono a se stessi. Per esempio, la regex "hello" corrisponderà esattamente alla stringa "hello".

Metacaratteri

Le espressioni regolari includono anche metacaratteri, che hanno significati speciali. Alcuni metacaratteri comuni includono:

  • . (punto): Corrisponde a qualsiasi singolo carattere tranne l'interruzione di riga.
  • *: Corrisponde a zero o più occorrenze del carattere o gruppo precedente.
  • +: Corrisponde a una o più occorrenze del carattere o gruppo precedente.
  • ?: Corrisponde a zero o una occorrenza del carattere o gruppo precedente.
  • | (pipe): Funziona come un OR logico e permette di specificare alternative.
  • () (parentesi): Raggruppano caratteri o sotto-pattern.
  • [] (parentesi quadre): Definiscono una classe di caratteri, permettendo di far corrispondere uno qualsiasi dei caratteri dell'insieme.
  • ^ (accento circonflesso): Corrisponde all'inizio di una riga o stringa.
  • $: Corrisponde alla fine di una riga o stringa.
  • \ (backslash): Escape di un metacarattere per farlo corrispondere letteralmente.

Classi di caratteri

Le classi di caratteri nelle espressioni regolari (regex) sono notazioni speciali che permettono di far corrispondere uno qualunque tra un insieme di caratteri. Servono a semplificare i pattern regex offrendo un modo conciso per specificare un gruppo di caratteri da far corrispondere. Puoi usare le parentesi quadre [...] per definire le classi di caratteri. Ad esempio, [aeiou] corrisponde a qualsiasi vocale. [A-Z] corrisponde a qualsiasi lettera maiuscola.

Quantificatori

I quantificatori sono costrutti che specificano quante volte un determinato pattern, carattere o classe di caratteri deve comparire nella stringa di destinazione per ottenere una corrispondenza. In altre parole, indicano quante volte ripetere un carattere o un gruppo. Per esempio, a{3} corrisponde esattamente a tre "a" consecutive. ab? corrisponde a "a" oppure a "ab".

Ancore

Le ancore sono caratteri speciali che non corrispondono ad alcun carattere della stringa. Invece, corrispondono a una posizione prima, dopo o tra i caratteri. Le ancore si usano per garantire che il pattern regex compaia in un punto specifico del testo. Ad esempio, ^ ancora il pattern all'inizio della stringa e $ alla fine.

Modificatori

I modificatori sono caratteri che cambiano il modo in cui il motore regex interpreta il pattern. Servono ad adattare il comportamento della corrispondenza regex, consentendo maggiore flessibilità e controllo. Possono influire su vari aspetti del processo di matching, come la distinzione tra maiuscole e minuscole, la corrispondenza multilinea e l'interpretazione dei caratteri speciali. Per esempio, i rende il pattern case-insensitive, e g lo rende globale, quindi corrisponde a tutte le occorrenze nell'input.

Applicazioni delle espressioni regolari in Excel

Le RegEx sono utili in vari scenari:

Convalida dei dati

Nella maggior parte dei casi, dovrai convalidare i dati per assicurarti di analizzare le informazioni corrette. Un esempio classico sono i numeri di telefono. Negli Stati Uniti, il formato standard è (###) ###-####. Tuttavia, possono anche essere formattati così: ###-###-####, (+#) ### ### ####, ##########, ecc. Le RegEx possono aiutare a identificare che le informazioni contenute nel file sono effettivamente numeri di telefono. La seguente espressione regolare troverà corrispondenze con numeri di telefono a 10 cifre, con un prefisso internazionale facoltativo da 1 a 2 cifre: (\+\d{1,2}\s)?\(?\d{3}\)?[\s.-]?\d{3}[\s.-]?\d{4}$.

Estrazione di testo

Le frasi lunghe sono spesso difficili da analizzare con un tradizionale software di fogli di calcolo. Per estrarre parole chiave specifiche, puoi usare le RegEx proprio per questo. Ad esempio, per estrarre i titoli dei libri, racchiusi tra apici singoli, dalla trascrizione di un'intervista, possiamo usare la seguente espressione regolare: '(.*?)'.

Manipolazione del testo

Oltre a estrarre informazioni, puoi anche trasformarle e standardizzarle per finalità di report. Supponiamo di voler estrarre le prime cinque cifre dei codici postali statunitensi (ZIP). Possiamo sostituire tutte le occorrenze di un campo che contiene codici postali usando l'espressione regolare ^\d{5}.

Tokenizzazione

La tokenizzazione è il processo di suddivisione del testo in token o parole individuali. I pattern regex possono essere usati per definire le regole di tokenizzazione del testo. Per esempio, puoi usare \s+ per dividere il testo sui caratteri di spazio bianco o \W+ per dividere su caratteri non alfanumerici come la punteggiatura.

Per informazioni su ulteriori pattern, dai un'occhiata al nostro cheat sheet di espressioni regolari in Python.

Usare le RegEx in Excel

Sebbene Excel non supporti nativamente le RegEx, puoi abilitarle scrivendo una tua definizione personalizzata con uno script VBA (per Windows) o attivando componenti aggiuntivi (per Mac). Vediamo come abilitare una funzione regex per estrarre testo da una colonna in Excel.

Per Windows

Per iniziare, premi Alt+F11 per aprire l'Editor di Visual Basic. Puoi anche raggiungerlo tramite Strumenti > Macro > Editor di Visual Basic. Quindi, fai clic su Inserisci > Modulo.

Incolla la seguente funzione nel modulo:

Public Function CustomRegExpExtract(inputText As String, regexPattern As String, Optional instanceNumber As Integer = 0, Optional matchCase As Boolean = True) As Variant
    Dim textMatches() As String
    Dim matchesIndex As Integer
    Dim regex As Object
    Dim matches As Object
    
    On Error GoTo ErrHandler
    
    CustomRegExpExtract = ""
    
    ' Create a regular expression object
    Set regex = CreateObject("VBScript.RegExp")
    regex.Pattern = regexPattern
    regex.Global = True
    regex.MultiLine = True
    
    ' Set case sensitivity
    If matchCase Then
        regex.IgnoreCase = False
    Else
        regex.IgnoreCase = True
    End If
    
    ' Execute the regex pattern on the input text
    Set matches = regex.Execute(inputText)
    
    If matches.Count > 0 Then
        If instanceNumber = 0 Then
            ' If instanceNumber is 0, return all matches in an array
            ReDim textMatches(matches.Count - 1, 0)
            For matchesIndex = 0 To matches.Count - 1
                textMatches(matchesIndex, 0) = matches.Item(matchesIndex)
            Next matchesIndex
            CustomRegExpExtract = textMatches
        Else
            ' If instanceNumber is specified, return the match at that instance
            CustomRegExpExtract = matches.Item(instanceNumber - 1)
        End If
    End If
    
    Exit Function

ErrHandler:
    ' Handle errors by returning an error value
    CustomRegExpExtract = CVErr(xlErrValue)
End Function

' Modified from an original script by Patrick Matthews

Salva la funzione e torna al foglio di lavoro. Ora salva la cartella di lavoro come abilitata alle macro, con estensione file .xlsm.

Usare la funzione in un foglio di lavoro Excel

Abilitando le macro nella tua cartella di lavoro Excel, ora puoi usare la funzione CustomRegExpExtract come una normale funzione di Excel per analizzare pattern di stringhe complessi, dove:

  • inputText è la stringa originale da analizzare;
  • regexPattern è il pattern dell'espressione regolare usato per analizzare inputText;
  • instanceNumber per impostazione predefinita restituisce tutte le occorrenze del pattern, ma è possibile inserire un intero per specificare il numero di occorrenze da restituire; e
  • matchCase specifica se considerare la distinzione tra maiuscole e minuscole durante il matching (TRUE o omesso) oppure ignorarla (FALSE).

Poniamo di voler estrarre i numeri di telefono da un campo. Possiamo digitare il pattern regex in una qualsiasi cella (nel caso sotto, si trova in A2). In A6 c'è il tuo esempio di stringa libera, "Sophia, 1111111111". In B6, digitiamo =CustomRegExpExtract(A6,$A$2). La funzione estrae il numero di telefono confrontando la stringa con il pattern regex in A2 e restituisce "1111111111", come previsto.

image1.png

Per Mac OS

Purtroppo, Mac OS non riconosce la libreria MS VBScript Regular Expressions 5.5. Per abilitare il pattern matching complesso in Excel su Mac, ci sono due opzioni: usare i filtri avanzati oppure installare componenti aggiuntivi.

image2.png

Uso dei filtri avanzati

I filtri avanzati in Excel aiutano a eseguire operazioni di filtraggio dati complesse basate su un insieme di criteri multipli. Questa funzionalità è particolarmente utile quando si lavora con dataset di grandi dimensioni. Ecco come usare i filtri avanzati in Excel:

  • Prepara i dati: Assicurati che i dati siano in un formato simile a una tabella con intestazioni chiare.
  • Crea un intervallo di criteri: Imposta un'area separata nel foglio per definire i criteri di filtro. Quest'area deve avere le stesse intestazioni delle colonne da filtrare. Sotto queste intestazioni, specifica i criteri di filtro. Puoi inserire più criteri sotto la stessa intestazione per una logica "OR", oppure su righe separate per una logica "AND".
  • Seleziona i dati: Fai clic su una cella all'interno del dataset o seleziona l'intero intervallo da filtrare.
  • Configura il filtro: Fai clic sulla scheda Dati nella barra multifunzione di Excel e vai all'opzione Filtro avanzato. Clicca su Avanzate nel gruppo Ordina e filtra. Nella finestra Filtro avanzato, scegli se filtrare l'elenco in posizione oppure copiare i risultati in un'altra posizione. Specifica l'Intervallo elenco (i tuoi dati). Specifica l'Intervallo criteri (dove hai impostato le condizioni di filtro). Fai clic su OK per applicare il filtro.

Supponiamo di avere un dataset con le colonne Nome, Età, Città. Vuoi filtrare per mostrare le persone con più di 30 anni a New York o chiunque si trovi a Los Angeles. Il tuo intervallo di criteri potrebbe essere così:

Name

Age

City

 

>30

New York

   

Los Angeles

Installazione di componenti aggiuntivi

  • Kutools for Excel: Kutools è un componente aggiuntivo completo che include molte funzioni, tra cui la possibilità di trovare e sostituire dati usando le regex. Aggiunge una nuova scheda alla barra multifunzione di Excel con un'ampia gamma di strumenti, incluse funzioni regex.
  • RegEx Find/Replace: È un componente aggiuntivo per Excel che permette di trovare e sostituire testo usando le espressioni regolari. Si integra in Excel e offre funzionalità di ricerca/sostituzione più avanzate rispetto all'opzione integrata.
  • PowerGREP: Pur non essendo un componente aggiuntivo diretto di Excel, PowerGREP può lavorare con file Excel. È un potente strumento grep per Windows che consente operazioni regex complesse su file di testo e binari. È più un'applicazione autonoma, ma può essere usata insieme a Excel per una gestione avanzata delle regex. Non è economico, però. Una licenza per singolo utente costa 159 $ e il prezzo sale a 5.300 $ per una licenza da 100 utenti.

Alcuni componenti aggiuntivi si trovano direttamente in Excel tramite la scheda Inserisci > Ottieni componenti aggiuntivi.

Altri devono essere scaricati da una fonte esterna e installati seguendo le relative istruzioni.

Alcune considerazioni:

  • Compatibilità: Assicurati che il componente aggiuntivo sia compatibile con la tua versione di Excel e il tuo sistema operativo.
  • Sicurezza: Scarica e installa componenti aggiuntivi solo da fonti affidabili.
  • Esigenze funzionali: Valuta i compiti regex specifici che devi svolgere e scegli un componente aggiuntivo che si adatti al meglio a tali esigenze.

Conclusione

Nella maggior parte dei casi, funzioni native come TROVA, CERCA e SOSTITUISCI copriranno il 90% delle tue esigenze di manipolazione del testo in Excel. Tuttavia, per il restante 10%, nei casi che coinvolgono pattern di stringhe più complessi, le regex possono aiutare moltissimo. Per saperne di più sull'applicazione delle espressioni regolari con i linguaggi di programmazione più diffusi, dai un'occhiata ai nostri corsi su Regular Expressions in Python e Intermediate Regular Expressions in R.

Per rimetterti in pari con tutto ciò che riguarda Excel, dai un'occhiata al nostro percorso di competenze Excel Fundamentals, che ti guida attraverso le competenze essenziali per diventare competente con lo strumento.


Chloe Lubin's photo
Author
Chloe Lubin

Data analyst di giorno, storyteller di notte. Mi piace usare le mie conoscenze per colmare il divario di alfabetizzazione dei dati e aiutare chi è alle prime armi a entrare nel settore. La mia filosofia è imparare ogni giorno, anche solo per 5 minuti!

Argomenti
Fogli di calcolo

Inizia oggi il tuo percorso in Excel!

Corso

Introduzione a Excel

4 ore
277.5K
Impara le basi di Excel e usa questo strumento per condurre analisi d'impatto.
Vedi i dettagliRight Arrow
Inizia Il Corso
Mostra altroRight Arrow
Correlato

blog

Tokenizzazione nel NLP: come funziona, sfide e casi d'uso

Guida al preprocessing NLP nel machine learning. Copriamo spaCy, i transformer di Hugging Face e come funziona la tokenizzazione in casi d'uso reali.
Abid Ali Awan's photo

Abid Ali Awan

10 min

blog

Che cos'è Snowflake? Guida per principianti alla piattaforma dati cloud

Esplora le basi di Snowflake, la piattaforma dati cloud. Scopri la sua architettura, le sue funzionalità e come integrarla nelle tue pipeline di dati.
Tim Lu's photo

Tim Lu

12 min

blog

I 15 migliori server MCP remoti che ogni AI builder dovrebbe conoscere nel 2026

Scopri i 15 migliori server MCP remoti che stanno trasformando lo sviluppo AI nel 2026. Scopri come migliorano automazione, ragionamento, sicurezza e velocità dei workflow.
Abid Ali Awan's photo

Abid Ali Awan

15 min

Mostra AltroMostra Altro