Excel har en uppsättning textfunktioner som kan göra underverk. Du kan göra alla typer av TEXT skiva och tärningar med hjälp av dessa funktioner.
en av de vanliga uppgifterna för personer som arbetar med textdata är att extrahera en substring i Excel (dvs få psrt av texten från en cell).
tyvärr, det finns ingen substring funktion i Excel som kan göra detta enkelt. Detta kan dock fortfarande göras med hjälp av textformler samt några andra inbyggda Excel-funktioner.,
denna handledning omfattar:
Låt oss först ta en titt på några av de textfunktioner som vi kommer att använda i den här handledningen.
Excel-Textfunktioner
Excel har en rad textfunktioner som gör det väldigt enkelt att extrahera en substring från originaltexten i Excel. Här är Excel-textfunktionerna som vi kommer att använda i den här handledningen:
- rätt funktion: extraherar de angivna numren av tecken från höger om textsträngen.
- vänster funktion: extraherar de angivna numren av tecken från vänster om textsträngen.,
- Mid function: extraherar de angivna numren av tecken från den angivna startpositionen i en textsträng.
- sökfunktion: hittar startpositionen för den angivna texten i textsträngen.
- len function: Returnerar antalet tecken i textsträngen.,
extrahera en Substring i Excel med hjälp av funktioner
anta att du har en dataset som visas nedan:
dessa är några slumpmässiga (men superhero-ish) e-post ID (utom min), och i exemplen nedan visar jag hur du extraherar användarnamn och domännamn med hjälp av Textfunktionerna i Excel.
exempel 1 – extrahera användarnamn från e-post-ID
När du använder Textfunktioner är det viktigt att identifiera ett mönster (om något). Det gör det verkligen lätt att konstruera en formel., I ovanstående fall är mönstret @ – tecknet mellan användarnamnet och domännamnet, och vi kommer att använda det som en referens för att få användarnamnen.
här är formeln för att få användarnamnet:
=LEFT(A2,FIND("@",A2)-1)
ovanstående formel använder vänster funktion för att extrahera användarnamnet genom att identifiera positionen för @ – tecknet i id. Detta görs med hjälp av sökfunktionen, som returnerar @ – positionen.
till exempel när det gäller [email protected], hitta (”@ ” , A2) skulle returnera 11, vilket är dess position i textsträngen.,
nu använder vi den vänstra funktionen för att extrahera 10 tecken från vänster om strängen (ett mindre än det värde som returneras av den vänstra funktionen).
exempel 2 – Extrahera domännamnet från e-post-ID
samma logik som används i exemplet ovan kan användas för att få domännamnet. En mindre skillnad här är att vi måste extrahera tecknen från höger om textsträngen.,
här är formeln som kommer att göra detta:
=RIGHT(A2,LEN(A2)-FIND("@",A2))
i ovanstående formel använder vi samma logik, men justerar den för att se till att vi får rätt sträng.
Låt oss återigen ta exemplet med [email protected]. sökfunktionen returnerar positionen för @ – tecknet, vilket är 11 i det här fallet. Nu måste vi extrahera alla tecken efter @. Så vi identifierar strängens totala längd och subtraherar antalet tecken till @. Det ger oss antalet tecken som täcker domännamnet till höger.,
Nu kan vi helt enkelt använda rätt funktion för att få domännamnet.
exempel 3 – extrahera domännamnet Från e-post-ID (utan .com)
för att extrahera en substring från mitten av en textsträng måste du identifiera markörens position strax före och efter substringen.
till exempel, i exemplet nedan, för att få domännamnet utan .com-delen, skulle markören vara @ (vilket är precis före domännamnet) och . (vilket är direkt efter det).,
här är formeln som bara kommer att extrahera domännamnet:
=MID(A2,FIND("@",A2)+1,FIND(".",A2)-FIND("@",A2)-1)
Excel Mid-funktionen extraherar det angivna antalet tecken från den angivna startpositionen. I det här exemplet ovan anger FIND (”@”, A2)+1 startpositionen (som är direkt efter@) och FIND(”.”, A2)-FIND (”@ ” , A2)-1 identifierar antalet tecken mellan ’@’ och ’.’
Uppdatering: en av läsarna William19 nämnde att ovanstående formel inte skulle fungera om det finns en punkt (.) i e-post-id (till exempel bruce.wayne@batman.,kom). Så här är formeln för att hantera sådana fall:
=MID(A1,FIND("@",A1)+1,FIND(".",A1,FIND("@",A1))-FIND("@",A1)-1)
använda Text till kolumner för att extrahera en Substring i Excel
med hjälp av funktioner för att extrahera en substring i Excel har fördelen att vara dynamisk. Om du ändrar den ursprungliga texten, skulle formeln automatiskt uppdatera resultaten.
om det här är något du kanske inte behöver, kan funktionen Text till kolumner vara ett snabbt och enkelt sätt att dela upp texten i understrängar baserat på angivna markörer.
Så här gör du:
- Välj de celler där du har texten.,
- gå till Data –> dataverktyg –> Text till kolumner.
- I guiden text till kolumn Steg 1 väljer du avgränsad och trycker på Nästa.
- i steg 2 markerar du det andra alternativet och anger @ i rutan direkt till den. Detta kommer att vara vår avgränsare som Excel skulle använda för att dela upp texten i substrings. Du kan se förhandsgranskningen av Data nedan. Klicka på Nästa.
- i steg 3 fungerar den allmänna inställningen bra i det här fallet., Du kan dock välja ett annat format om du delar upp nummer/datum. Som standard är målcellen där du har originaldata. Om du vill behålla de ursprungliga uppgifterna intakta, ändra detta till någon annan cell.
- Klicka på Slutför.
detta kommer omedelbart att ge dig två uppsättningar substrings för varje e-post-id som används i det här exemplet.
om du vill dela upp texten ytterligare (till exempel dela batman.com till batman och com), upprepa samma process med den.,
att använda Sök och ersätt för att extrahera Text från en Cell i Excel
hitta och ersätt kan vara en kraftfull teknik när du arbetar med text i Excel. I exemplen nedan lär du dig hur du använder hitta och ersätta med jokertecken för att göra fantastiska saker i Excel.
See Also: Learn All about Wildcard Characters in Excel.
låt oss ta samma e-post ID-exempel.
exempel 1 – extrahera användarnamn Från e-post-ID
här är stegen för att extrahera användarnamn Från e-post-ID med hjälp av funktionen Sök och ersätt:
- kopiera och klistra in originaldata., Eftersom hitta och ersätta verk och förändrar de data som den tillämpas på, är det bäst att ha en säkerhetskopia av de ursprungliga uppgifterna.
- Välj data och gå till hem –> redigering –> Sök& Välj –> Ersätt (eller använd kortkommandot Ctrl + H).,
- i dialogrutan Sök och ersätt anger du följande:
- hitta vad: @*
- Ersätt med: (lämna detta tomt)
- Klicka på Ersätt alla.
detta tar omedelbart bort all text före @ i e-post-ID: n. Du får resultatet som visas nedan:
exempel 2 – Extrahera domännamnet från e-post-ID
med samma logik kan du ändra kriterierna ”hitta vad” för att få domännamnet.,
här är stegen:
detta tar omedelbart bort all text före @ i e-post-ID: n. Du får resultatet som visas nedan:
Du kanske också gillar följande Excel-handledning:
- hur man räknar celler som innehåller textsträngar.
- extrahera användarnamn Från e-post-ID i Excel .
- Excel-funktioner (exempel + Videor).
- få ut mer av Sök och ersätt i Excel.
- hur man kapitaliserar första bokstaven i en textsträng i Excel
- hur man extraherar det första ordet från en textsträng i Excel