![](https://cdn.wiki-base.com/6446679/excel_formula_extract_word_that_begins_with_specific_character__2.png.webp)
Formula generica
=TRIM(LEFT(SUBSTITUTE(MID(txt,FIND("@",txt),LEN(txt))," ",REPT(" ",100)),100))
Sommario
Per estrarre le parole che iniziano con un carattere specifico, puoi utilizzare una formula basata su sei funzioni: TAGLIA, SINISTRA, SOSTITUISCI, MEDIO, LUNGO e RIPETI. Questo approccio è utile se è necessario estrarre elementi come un nome utente di Twitter da una cella che contiene altro testo.
Nell'esempio mostrato, la formula in C5 è:
=TRIM(LEFT(SUBSTITUTE(MID(B5,FIND("@",B5),LEN(B5))," ",REPT(" ",100)),100))
Spiegazione
Partendo dall'interno, la funzione MID viene utilizzata per estrarre tutto il testo dopo "@":
MID(B5,FIND("@",B5),LEN(B5))
La funzione TROVA fornisce il punto di partenza e per l'estrazione del totale dei caratteri, usiamo semplicemente LEN sul testo originale. Questo è un po 'sciatto, ma evita di dover calcolare il numero esatto di caratteri da estrarre. A MID non interessa se questo numero è più grande dei caratteri rimanenti, estrae semplicemente tutto il testo che segue "@".
Successivamente, "inondiamo" il testo rimanente con caratteri spazio, sostituendo ogni singolo spazio con 100 spazi utilizzando una combinazione di SOSTITUISCI e RIPETI:
SUBSTITUTE("@word and remaining text"," ",REPT(" ",100))
Questo sembra folle, ma la logica diventa chiara di seguito.
Successivamente, per estrarre solo la parola che vogliamo (cioè @word), usiamo LEFT per estrarre i primi 100 caratteri da sinistra. Questo ci fa ottenere "@word", più molti spazi extra. Per visualizzare, i trattini sottostanti rappresentano gli spazi:
@parola---------------------
Ora dobbiamo solo rimuovere tutti gli spazi extra. Per questo, usiamo la funzione TRIM.
Nota: 100 rappresenta la parola più lunga che ti aspetti di trovare che inizia con il carattere speciale. Aumenta o diminuisci in base alle tue esigenze.
Hai un modo migliore per farlo? Fammi sapere nei commenti qui sotto!