Excel formula: Izdvajanje riječi koja započinje određenim znakom -

Sadržaj

Generička formula

=TRIM(LEFT(SUBSTITUTE(MID(txt,FIND("@",txt),LEN(txt))," ",REPT(" ",100)),100))

Sažetak

Da biste izdvojili riječi koje počinju određenim znakom, možete upotrijebiti formulu koja se temelji na šest funkcija: TRIM, LEFT, SUBSTITUTE, MID, LEN i REPT. Ovaj je pristup koristan ako trebate izdvojiti stvari poput korisničkog imena za Twitter iz ćelije koja sadrži drugi tekst.

U prikazanom primjeru formula u C5 je:

=TRIM(LEFT(SUBSTITUTE(MID(B5,FIND("@",B5),LEN(B5))," ",REPT(" ",100)),100))

Obrazloženje

Polazeći iznutra prema van, funkcija MID koristi se za izdvajanje cijelog teksta nakon "@":

MID(B5,FIND("@",B5),LEN(B5))

Funkcija FIND pruža početnu točku, a za izvlačenje ukupnih znakova samo koristimo LEN na izvornom tekstu. Ovo je pomalo traljavo, ali izbjegava izračunavanje točnog broja znakova za izdvajanje. MID-a nije briga je li ovaj broj veći od preostalih znakova, on jednostavno izdvaja sav tekst slijedeći "@".

Dalje, preostali tekst "preplavimo" razmacima, zamjenjujući bilo koji pojedini razmak sa 100 razmaka kombinacijom SUBSTITUTE i REPT:

SUBSTITUTE("@word and remaining text"," ",REPT(" ",100))

To se čini suludo, ali logika postaje jasna u nastavku.

Dalje, da bismo izdvojili samo željenu riječ (tj. @Word), koristimo LIJEVO za izdvajanje prvih 100 znakova slijeva. To nam daje "@word", kao i mnogo dodatnih prostora. Da biste vizualizirali, crtice u nastavku predstavljaju razmake:

@riječ---------------------

Sada samo trebamo ukloniti sve dodatne prostore. Za to koristimo funkciju TRIM.

Napomena: 100 predstavlja najdužu riječ koju očekujete da započne s posebnim znakom. Povećajte ili smanjite prema svojim potrebama.

Imate li bolji način za to? Javite mi u komentarima ispod!

Zanimljivi članci...