Formula di Excel: ottieni il dominio di primo livello (TLD) -

Sommario

Formula generica

=RIGHT(domain,LEN(domain)-FIND("*",SUBSTITUTE(domain,".","*",LEN(domain)-LEN(SUBSTITUTE(domain,".","")))))

Sommario

Per estrarre il dominio di primo livello (TLD) (ad esempio "com", "net", "org") da un nome di dominio o da un indirizzo e-mail, puoi utilizzare una formula basata su diverse funzioni di testo: MID, RIGHT, FIND, LEN, e SOSTITUISCI. Nell'esempio mostrato, la formula nella cella C5 è:

=RIGHT(B5,LEN(B5)-FIND("*",SUBSTITUTE(B5,".","*",LEN(B5)-LEN(SUBSTITUTE(B5,".","")))))

Nota: nella forma generica della formula "dominio" rappresenta un dominio o un indirizzo email come "www.dominio.com".

Spiegazione

Nell'esempio, la cella C5 contiene questa formula:

=RIGHT(B5,LEN(B5)-FIND("*",SUBSTITUTE(B5,".","*",LEN(B5)-LEN(SUBSTITUTE(B5,".","")))))

Al centro, questa formula utilizza la funzione DESTRA per estrarre i caratteri partendo da destra. Le altre funzioni in questa formula fanno solo una cosa: determinano quanti caratteri devono essere estratti, n:

=RIGHT(B5,n) // n = ??

Ad un livello alto, la formula sostituisce l'ultimo punto "." nel dominio con un asterisco (*) e quindi utilizza la funzione TROVA per individuare la posizione dell'asterisco. Una volta nota la posizione, la funzione RIGHT può estrarre il TLD.

Come fa la formula a sapere di sostituire solo l'ultimo punto? Questa è la parte intelligente. La chiave è qui:

SUBSTITUTE(B5,".","*",LEN(B5)-LEN(SUBSTITUTE(B5,".","")))

Questo frammento sostituisce effettivamente l'ultimo punto con un asterisco (*).

Il trucco è che la funzione SOSTITUISCI ha un quarto argomento opzionale che specifica quale "istanza" del testo di ricerca deve essere sostituita. Se non viene fornito nulla, tutte le istanze vengono sostituite. Tuttavia, se, ad esempio, viene fornito il numero 2, viene sostituita solo la seconda istanza.

Per capire quale istanza sostituire, viene utilizzata la funzione LEN:

LEN(B5)-LEN(SUBSTITUTE(B5,".",""))

La lunghezza del dominio senza punti viene sottratta dalla lunghezza totale del dominio. Il risultato è il numero di punti nel dominio.

Nel nome di esempio in B5, ci sono due punti nel dominio, quindi il numero 2 viene utilizzato come nel numero di istanza:

SUBSTITUTE(B5," ","*",2)

Questo sostituisce solo il secondo punto con "*". Il nome quindi assomiglia a questo:

"www.domain * com"

La funzione TROVA quindi prende il sopravvento per capire esattamente dove si trova l'asterisco nel testo:

FIND("*", "www.domain*com")

Il risultato è 11 (l'asterisco * è all'undicesima posizione) che viene sottratto dalla lunghezza totale del dominio:

LEN(B5)-11

Poiché il nome è di 15 caratteri, abbiamo:

14-11 = 3

Infine, il numero 3 è usato da RIGHT in questo modo:

=RIGHT(B5,3)

Che risulta in "com"

Articoli interessanti...