Tutorial sulla Funzione REGEXREPLACE in Excel

Versione: Microsoft 365
Ultimo aggiornamento:
Suggerimento: Usa ⬆️ ⬇️ per scorrere la pagina su e giù. Ti consigliamo di navigare con uno schermo grande per una migliore esperienza di lettura.

1. Introduzione alla Funzione REGEXREPLACE

La funzione REGEXREPLACE è uno strumento potente in Excel che consente agli utenti di trovare e sostituire sottostringhe all'interno di un testo utilizzando espressioni regolari. Questo è particolarmente utile per ripulire i dati o riformattare le stringhe in blocco.
Introduzione alla Funzione REGEXREPLACE

2. Parametri della Funzione REGEXREPLACE

Questa è la sintassi per utilizzare la funzione REGEXREPLACE.
=REGEXREPLACE(text, pattern, replacement, [occurrence], [case_sensitivity])
  • text: obbligatorio Il testo o il riferimento a una cella contenente il testo in cui desideri sostituire le stringhe.
  • pattern: obbligatorio L'espressione regolare ("regex") che descrive il modello di testo che desideri sostituire.
  • replacement: obbligatorio Il testo con cui desideri sostituire le istanze del modello.
  • occurrence: facoltativo Specifica quale istanza del modello desideri sostituire. Per impostazione predefinita, l'occurrence è 0, che sostituisce tutte le istanze. Un numero negativo sostituisce quell'istanza, cercando dalla fine.
  • case_sensitivity: facoltativo Determina se la corrispondenza è sensibile ai casi. Per impostazione predefinita, la corrispondenza è sensibile ai casi. Inserisci uno dei seguenti valori:
  • 0: Sensibile ai casi
  • 1: Insensibile ai casi
  • 3. Scenario Esempio: Formattazione dei Numeri di Telefono

    Ad esempio, supponiamo di avere un elenco di numeri di telefono in vari formati e di volerli standardizzare al formato (xxx) xxx-xxxx. Utilizzare la funzione REGEXREPLACE può semplificare drasticamente questo processo.
    Scenario Esempio: Formattazione dei Numeri di TelefonoScenario Esempio: Formattazione dei Numeri di Telefono

    4. Iniziare con la Funzione REGEXREPLACE

    Digita sulla tastiera: =REGEXREPLACE(, poi seleziona A5 come testo da elaborare.
    Iniziare con la Funzione REGEXREPLACE

    5. Rimuovi i Caratteri Non Numerici

    Qui impostiamo l'espressione regolare su: "\D", che corrisponde a qualsiasi carattere non numerico, e poi impostiamo la sostituzione su una stringa vuota: "".
    Rimuovi i Caratteri Non Numerici

    6. Applica la Funzione REGEXREPLACE

    In questo modo, possiamo sostituire tutti i caratteri non numerici nei numeri di telefono con nulla.

    Potrebbe sembrare che i dati non siano cambiati perché il formato originale è già numerico. Applichiamo lo stesso trattamento ad altre righe.
    Applica la Funzione REGEXREPLACE

    7. Caratteri Non Numerici Filtrati con Successo

    Ora abbiamo filtrato con successo i caratteri non numerici dai numeri di telefono.
    Caratteri Non Numerici Filtrati con Successo

    8. Formatta i Numeri di Telefono

    Possiamo anche convertire i numeri di telefono in un formato fisso di (xxx) xxx-xxxx.

    L'espressione regolare utilizzata qui è: "(\d{3})[.-]?\s?(\d{3})[.-]?\s?(\d{4})", e l'espressione regolare di sostituzione è: "($1) $2-$3".
    Formatta i Numeri di Telefono

    9. Analisi delle Corrispondenze delle Espressioni Regolari

    Qui utilizziamo tre gruppi di cattura delle espressioni regolari per suddividere il numero di telefono in tre parti. Ogni parte corrisponde alle cifre nel numero di telefono.
    text:
    regularExpr:
    123-456-7890(\d{3})[.-]?\s?(\d{3})[.-]?\s?(\d{4})
    1123(\d{3})
    2-[.-]?\s?
    3456(\d{3})
    4-[.-]?\s?
    57890(\d{4})
    1(\d{3})
    (
    l'inizio del gruppo di cattura
    \d Cifra
    corrisponde a qualsiasi carattere numerico (0-9)
    {3} Quantificatore
    corrisponde 3 all'elemento precedente
    )
    la fine del gruppo di cattura
    2[.-]?\s?
    [.-] Insieme di caratteri
    carattere .,   carattere -.
    ? Quantificatore
    corrisponde da 0 a 1 all'elemento precedente.
    \s Insieme di caratteri
    qualsiasi carattere di spazio (spazi, tabulazioni, interruzioni di riga)
    ? Quantificatore
    corrisponde da 0 a 1 all'elemento precedente.
    3(\d{3})
    (
    l'inizio del gruppo di cattura
    \d Cifra
    corrisponde a qualsiasi carattere numerico (0-9)
    {3} Quantificatore
    corrisponde 3 all'elemento precedente
    )
    la fine del gruppo di cattura
    4[.-]?\s?
    [.-] Insieme di caratteri
    carattere .,   carattere -.
    ? Quantificatore
    corrisponde da 0 a 1 all'elemento precedente.
    \s Insieme di caratteri
    qualsiasi carattere di spazio (spazi, tabulazioni, interruzioni di riga)
    ? Quantificatore
    corrisponde da 0 a 1 all'elemento precedente.
    5(\d{4})
    (
    l'inizio del gruppo di cattura
    \d Cifra
    corrisponde a qualsiasi carattere numerico (0-9)
    {4} Quantificatore
    corrisponde 4 all'elemento precedente
    )
    la fine del gruppo di cattura

    10. Analisi della Sostituzione delle Espressioni Regolari

    Poi concatenamo le tre parti corrispondenti al regex nel formato desiderato.
    text:
    regularExpr:
    (123) 456-6789($1) $2-$3
    1((
    2123$1
    3))
    4
    5456$2
    6--
    76789$3
    1( Carattere
    2$1 Contenuto del primo gruppo di cattura
    3) Carattere
    4 Carattere
    carattere di spazio bianco
    5$2 Contenuto del secondo gruppo di cattura
    6- Carattere
    7$3 Contenuto del terzo gruppo di cattura

    11. Numeri di Telefono Formattati con Successo

    Così abbiamo formattato con successo i numeri di telefono nel formato desiderato. Applica questo ad altre righe per completare l'intero processo di pulizia dei dati.
    Numeri di Telefono Formattati con Successo

    12. Casi di Mancata Corrispondenza delle Espressioni Regolari

    Potresti essere confuso dal fatto che la nostra espressione regolare "(\d{3})[.-]?\s?(\d{3})[.-]?\s?(\d{4})" non ha corrisposto ai numeri di telefono originariamente nel formato (xxx) xxx-xxxx.

    Infatti, il motivo è che la funzione REGEXREPLACE restituisce il testo originale invariato se il regex non corrisponde. Pertanto, non è necessario corrispondere ai numeri di telefono originariamente nel formato (xxx) xxx-xxxx.
    Casi di Mancata Corrispondenza delle Espressioni RegolariCasi di Mancata Corrispondenza delle Espressioni Regolari

    13. 🎉 Terminare! 🎉

    Nota dell'autore: Spero che tu possa percepire lo sforzo che ho messo in questi tutorial. Spero di creare una serie di tutorial Excel molto facili da capire.

    Se è utile, aiutami a condividere questi tutorial, grazie!


    Seguimi:
    Introduzione alla Funzione REGEXREPLACE