Estrarre pattern con REGEXEXTRACT
Estrarre da una stringa la parte che corrisponde a un pattern
Estrarre pattern con REGEXEXTRACT è una lezione Excel Formulas Academy gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Excel Formulas Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Excel Formulas Academy include 4 lezioni in totale.
Dal sì/no all'estrazione della corrispondenza
REGEXMATCH indica se è presente un pattern. Spesso, però, vuole ottenere il testo corrispondente, ad esempio i numeri da Order #4821 o il dominio da un indirizzo e-mail.
È questo il compito di REGEXEXTRACT. Trova la prima parte del testo che corrisponde al pattern e restituisce quel segmento come valore della cella.
Anche questa è una funzione di Google Sheets. È uno dei modi più semplici per estrarre parti strutturate da dati importati e disordinati.
La sintassi di REGEXEXTRACT
REGEXEXTRACT(text, pattern) restituisce la prima sottostringa di text che corrisponde a pattern.
Se non trova alcuna corrispondenza, restituisce un errore #N/A anziché una cella vuota: è importante ricordarlo.
La formula seguente estrae la prima sequenza di cifre da A2. Per Order 4821 restituisce 4821.
=REGEXEXTRACT(A2, "\d+")Restituisce testo, non un numero
REGEXEXTRACT restituisce sempre testo, anche quando i caratteri corrispondenti sono cifre. Quindi 4821 viene restituito come stringa di testo, non come un numero su cui può eseguire calcoli.
Per convertirlo in un vero numero, lo racchiuda in VALUE. La formula seguente estrae le cifre e le converte, così può eseguire calcoli sul risultato.
=VALUE(REGEXEXTRACT(A2, "\d+"))Estrarre lettere o codici
I pattern non si limitano alle cifre. Per estrarre un prefisso composto da lettere maiuscole, usi una classe con un quantificatore.
La formula seguente estrae le lettere iniziali da un codice come INV2024 e restituisce INV. [A-Z]+ significa una o più lettere maiuscole consecutive.
=REGEXEXTRACT(A2, "[A-Z]+")Esempio: dividere un codice prodotto
Supponga che A2 contenga SKU-4821-RED e che voglia estrarre solo il numero centrale. Può descriverne la posizione includendo nel pattern il contesto circostante.
La formula seguente cerca le cifre situate tra due trattini e restituisce 4821. I trattini letterali guidano il motore verso la sequenza di cifre corretta.
=REGEXEXTRACT(A2, "-(\d+)-")I gruppi di cattura restituiscono solo la parte desiderata
Noti le parentesi nell'ultima formula: (\d+). Si tratta di un gruppo di cattura.
Quando il pattern contiene un gruppo di cattura, REGEXEXTRACT restituisce solo ciò che si trova tra le parentesi, non l'intera corrispondenza. Ecco perché -(\d+)- restituisce 4821 ed elimina i trattini.
I gruppi di cattura consentono di includere il contesto circostante per aumentare la precisione della corrispondenza, estraendo comunque solo la parte desiderata.
=REGEXEXTRACT(A2, "-(\d+)-")Esempio svolto: estrarre il dominio di un indirizzo email
Da sam@coddykit.com desidera ottenere il dominio coddykit.com. Faccia corrispondere un carattere @, quindi catturi tutto ciò che lo segue fino alla fine.
La formula seguente restituisce la parte di A2 che segue il simbolo chiocciola. (.+) cattura uno o più caratteri qualsiasi e $ vincola la corrispondenza alla fine della stringa.
=REGEXEXTRACT(A2, "@(.+)$")Gli ancoraggi rendono precisa l'estrazione
Gli ancoraggi aiutano a estrarre una parte da una posizione nota. Per catturare solo la prima parola, ancori la corrispondenza all'inizio e la interrompa al primo spazio.
La formula seguente cattura i caratteri iniziali non costituiti da spazi di A2. Per John Smith restituisce John. [^ ]+ significa uno o più caratteri che non sono spazi.
=REGEXEXTRACT(A2, "^([^ ]+)")Gestire l'assenza di corrispondenze
Poiché un'estrazione senza corrispondenza restituisce #N/A, trascinando la formula lungo una colonna con dati eterogenei si rischia di riempire il foglio di errori.
Racchiuda la chiamata in IFERROR per fornire un risultato alternativo pulito. La formula seguente restituisce le cifre se le trova oppure una stringa vuota se non ce ne sono.
=IFERROR(REGEXEXTRACT(A2, "\d+"), "")Estrarre usando l'alternanza
La barra verticale | significa oppure. Consente a un unico pattern di corrispondere a diverse alternative. È utile quando un codice può iniziare con prefissi diversi.
La formula seguente estrae la parola che indica lo stato presente in A2: OPEN, CLOSED oppure HOLD. Viene restituita la prima corrispondenza trovata.
=REGEXEXTRACT(A2, "OPEN|CLOSED|HOLD")Estrarre da una colonna su larga scala
REGEXEXTRACT dà il meglio di sé quando viene applicata a un'intera colonna di dati importati. Per ogni riga estrae la parte corrispondente in una nuova colonna ordinata, che può essere usata per ordinare o analizzare i dati.
Immagini che la colonna A contenga stringhe di ordine come Order 4821 - shipped. La formula seguente, trascinata lungo la colonna B, estrae solo il numero dell'ordine da ogni riga, creando una colonna dall'aspetto numerico ordinata a partire da testo disorganizzato.
=REGEXEXTRACT(A2, "Order (\d+)")Verifica rapida
Verifichi le Sue conoscenze sull'estrazione delle corrispondenze.
Riepilogo: estrarre la parte corrispondente
Ha imparato che REGEXEXTRACT(text, pattern) restituisce la prima sottostringa corrispondente in Google Sheets. Ecco i punti principali:
- Il risultato è sempre testo; per ottenere numeri, lo racchiuda in
VALUE - I gruppi di cattura tra parentesi restituiscono solo la parte interna
- Se non viene trovata alcuna corrispondenza, viene restituito
#N/A, quindi usiIFERRORper gestire il caso |consente a un unico pattern di corrispondere a diverse alternative
Nel prossimo argomento andrà oltre la semplice lettura e inizierà a riscrivere il testo direttamente con REGEXREPLACE.
Domande Frequenti
La lezione «Estrarre pattern con REGEXEXTRACT» è gratuita?
Sì — il testo completo di «Estrarre pattern con REGEXEXTRACT» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Excel Formulas Academy, passa a CoddyKit PRO. Il corso Excel Formulas Academy include 4 lezioni in totale.
Cosa imparerò in «Estrarre pattern con REGEXEXTRACT»?
Estrarre da una stringa la parte che corrisponde a un pattern Eserciti Excel Formulas Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Excel Formulas Academy?
Non è richiesta alcuna esperienza precedente. Excel Formulas Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.
Quanto tempo richiede la lezione «Estrarre pattern con REGEXEXTRACT»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Excel Formulas Academy?
Sì. Ogni lezione Excel Formulas Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Verificare i pattern con REGEXMATCH
- Estrarre pattern con REGEXEXTRACT
- Sostituire pattern con REGEXREPLACE
- Dividere e pulire dati disordinati