Izvleček podatkov iz Google listov: določeno besedilo iz nizov, URL-ji iz povezav in drugo.

  • Deliti To
Michael Brown

Naslednji del naših operacij z besedilom v preglednicah je posvečen ekstrakciji. Poiščite načine za ekstrakcijo različnih podatkov - besedila, znakov, številk, naslovov URL, e-poštnih naslovov, datuma in časa itd. - z različnih položajev v več celicah Google Sheets naenkrat.

    Formule Google Sheets za pridobivanje besedila in številk iz nizov

    Nekatere kombinacije dodajajo besedilo in številke ter odstranjujejo različne znake, nekatere pa izločajo tudi besedilo, številke, ločene znake itd.

    Izvleček podatkov po položaju: prvi/poslednji/srednji N znakov

    Funkcije LEFT, RIGHT in MID so najpreprostejše, ko želite iz celic Google Sheets odstraniti podatke. Z njimi pridobite vse podatke po položaju.

    Izvleček podatkov z začetka celic v Google Sheets

    Prvih N znakov lahko preprosto izvlečete s funkcijo LEVA:

    LEFT (niz,[število_znakov])
    • niz je besedilo, iz katerega želite pridobiti podatke.
    • število_znakov je število znakov, ki jih je treba odstraniti, začenši z leve.

    Najpreprostejši primer: iz telefonskih številk odstranimo kode držav:

    Kot lahko vidite, kode držav na začetku celic vsebujejo 6 simbolov, zato je formula, ki jo potrebujete, naslednja:

    =LEFT (A2,6)

    Nasvet: ArrayFormula bo omogočil pridobitev 6 znakov iz celotnega območja naenkrat:

    =ArrayFormula(LEFT(A2:A7,6))

    Izvleček podatkov s konca celic v Google Sheets

    Če želite iz celic izvleči zadnjih N znakov, namesto tega uporabite funkcijo RIGHT:

    PRAVICA (niz,[število_znakov])
    • niz je še vedno besedilo (ali referenca na celico), iz katerega se pridobivajo podatki.
    • število_znakov je tudi število znakov, ki jih je treba vzeti z desne strani.

    Pridobimo imena držav iz istih telefonskih številk:

    Vzemita le 2 znaka in to je točno to, kar sem navedel v formuli:

    =PRAVA (A2,2)

    Nasvet: ArrayFormula vam bo pomagal tudi pri pridobivanju podatkov s konca vseh celic Google Sheets naenkrat:

    =ArrayFormula(RIGHT(A2:A7,2))

    Izvleček podatkov iz sredine celic v Google Sheets

    Če obstajajo funkcije za pridobivanje podatkov z začetka in konca celic, mora obstajati tudi funkcija za pridobivanje podatkov s sredine. In da - obstaja.

    Imenuje se MID:

    MID(string, starting_at, extract_length)
    • niz - besedilo, iz katerega želite odstraniti srednji del.
    • starting_at - položaj znaka, od katerega želite začeti pridobivati podatke.
    • extract_length - število znakov, ki jih morate izvleči.

    Na primeru istih telefonskih številk poiščimo same telefonske številke brez kod držav in kratic držav:

    Ker se kode držav končajo s šestim znakom, sedmi znak pa je pomišljaj, bom številke začel vleči od osme številke. Skupaj bom dobil 8 številk:

    =MID(A2,8,8)

    Nasvet. Če spremenite eno celico v celotno območje in jo ovijete v ArrayFormula, boste dobili rezultat za vsako celico naenkrat:

    =ArrayFormula(MID(A2:A7,8,8))

    Izvleček besedila/števil iz nizov

    Včasih izločanje besedila po položaju (kot je prikazano zgoraj) ni mogoče. Zahtevani nizi se lahko nahajajo v katerem koli delu celic in so sestavljeni iz različnega števila znakov, zato morate za vsako celico ustvariti drugačne formule.

    Vendar Google Sheets ne bi bile Google Sheets, če ne bi imele drugih funkcij, ki pomagajo pri pridobivanju besedila iz nizov.

    Oglejmo si nekaj možnih načinov, ki jih ponujajo preglednice.

    Izvleček podatkov pred določenim besedilom - LEVO+ISKANJE

    Kadar želite izluščiti podatke, ki so pred določenim besedilom, uporabite kombinacijo LEVA + ISKANJE:

    • LEVA se uporablja za vračanje določenega števila znakov od začetka celic (z njihove leve strani).
    • ISKANJE poišče določene znake/vrvice in ugotovi njihov položaj.

    Če ju združite - in LEVA bo vrnila število znakov, ki jih je predlagalo ISKANJE.

    Primer: kako izluščite besedilne kode pred vsakim "ea"?

    To je formula, ki vam bo pomagala v podobnih primerih:

    =LEFT (A2,SEARCH("ea",A2)-1)

    V formuli je opisano naslednje:

    1. SEARCH("ea",A2) poišče 'ea' v A2 in vrne položaj, kjer se začne 'ea' za vsako celico - 10.
    2. Na 10. mestu je torej znak 'e'. Ker pa želim vse tik pred znakom 'ea', moram od tega mesta odšteti 1. V nasprotnem primeru bo vrnjen tudi znak 'e'. Tako na koncu dobim 9.
    3. LEVA pogleda A2 in dobi prvih 9 znakov.

    Izvleček podatkov po besedilu

    Na voljo so tudi sredstva za pridobitev vsega, kar sledi določenemu besedilnemu nizu. Toda tokrat ne bo pomagalo PRAVILNO. Namesto tega pride na vrsto REGEXREPLACE.

    Nasvet: REGEXREPLACE uporablja regularne izraze. Če se niste pripravljeni ukvarjati z njimi, je v nadaljevanju opisana veliko lažja rešitev. REGEXREPLACE(besedilo, regular_expression, replacement)

    • besedilo je niz ali celica, v kateri želite opraviti spremembe.
    • regular_expression je kombinacija znakov, ki označuje iskani del besedila.
    • zamenjava je vse, kar želite dobiti namesto tega besedilo

    Kako ga torej uporabite za pridobivanje podatkov po določenem besedilu - v mojem primeru je to "ea"?

    Enostavno - s to formulo:

    =REGEXREPLACE(A2,"(.*)ea(.*)","$2")

    Naj pojasnim, kako ta formula natančno deluje:

    1. A2 je celica, iz katere pridobivam podatke.
    2. "(.*)ea(.*)" je moj regularni izraz (lahko mu rečemo tudi maska). Iščem znak 'ea' in vse druge znake postavim v oklepaj. Obstajata dve skupini znakov - vse pred 'ea' je prva skupina (.*) in vse za 'ea' je druga skupina (.*). Celotna maska je postavljena v dvojne narekovaje.
    3. "$2" je tisto, kar želim dobiti - druga skupina (zato ima številko 2) iz prejšnjega argumenta.

    Nasvet: Na tej posebni strani so zbrani vsi znaki, ki se uporabljajo v regularnih izrazih.

    Izvleček številk iz celic Google Sheets

    Kaj pa, če želite izvleči samo številke, kadar je njihov položaj in vse, kar je pred & za njimi, nepomembno?

    V pomoč so tudi maske (t. i. regularni izrazi). Pravzaprav bom uporabil isto funkcijo REGEXREPLACE in spremenil regularni izraz:

    =REGEXREPLACE(A2,"[^[:digit:]]", "")

    1. A2 je celica, iz katere želim dobiti te številke.
    2. "[^[:številka:]]" je regularni izraz, ki sprejema vse, razen številk. Simbol ^caret je izjema za številke.
    3. "" nadomesti vse razen številskih znakov z "nič". Ali, z drugimi besedami, jih v celoti odstrani, tako da v celicah ostanejo samo številke. Ali pa izvleče številke :)

    Izvleček besedila brez upoštevanja številk in drugih znakov

    Na podoben način lahko iz celic Google Sheets odstranite samo abecedne podatke. Skrajšano ime za regularni izraz, ki označuje besedilo, je ustrezno - alfa:

    =REGEXREPLACE(A2,"[^[:alfa:]]", "")

    Ta formula vzame vse razen črk (A-Z, a-z) in jih dobesedno nadomesti z "nič". Ali drugače povedano, vzame samo črke.

    Načini pridobivanja podatkov iz celic Google Sheets brez formul

    Če iščete enostaven način za pridobivanje različnih vrst podatkov brez formul, ste prišli na pravo mesto. Naš dodatek Power Tools vsebuje orodja za to nalogo.

    Izvleček različnih vrst podatkov z uporabo dodatkov Power Tools

    Prvo orodje, ki bi ga rad spoznal, se imenuje Izvleček. Deluje točno to, kar ste iskali v tem članku - izvleče različne vrste podatkov iz celic Google Sheets.

    Uporabniku prijazne nastavitve

    Vseh primerov, ki sem jih opisal zgoraj, ni mogoče rešiti samo z dodatkom. Orodje je uporabniku prijazno zato morate le izbrati območje, ki ga želite obdelati, in označiti zahtevana potrditvena polja. Brez formul in regularnih izrazov.

    Se spomnite druge točke tega članka z REGEXREPLACE in regularnimi izrazi? Tukaj je prikazano, kako preprosto je to za dodatek:

    Dodatne možnosti

    Kot lahko vidite, je nekaj dodatne možnosti (samo potrditvena polja), ki jih lahko hiter vklop/izklop da bi dobili najbolj natančen rezultat:

    1. Pridobi nize samo zahtevanega primera besedila.
    2. Iz vsake celice izberite vse pojavitve in jih postavite v eno celico ali ločene stolpce.
    3. Vstavite nov stolpec z rezultatom na desno stran izvornih podatkov.
    4. Izbriši izločeno besedilo iz izvornih podatkov.

    Izvleček različnih vrst podatkov

    Program Power Tools ne izloča le podatkov pred/za/med določenimi besedilnimi nizi in prvimi/ zadnjimi N znaki, temveč tudi naslednje:

    1. Številke skupaj z decimalnimi številkami, pri čemer ostanejo ločila med decimalnimi številkami in tisočinkami nedotaknjena:

  • N znakov, ki se začnejo na določenem mestu v celici.
  • Hiperpovezave (besedilo + povezava), URL-ji (povezava), e-poštni naslovi.
  • Izvleček poljubnega niza podatkov od vsepovsod

    Na voljo je tudi možnost, da nastavite svoj natančen vzorec in ga uporabite za ekstrakcijo. Izvleček po maski in njegove nadomestne znake - * in . ? - opravi nalogo:

    • Z naslednjo masko lahko na primer poudarite vse, kar je med oklepaji: (*)
    • Ali pa pridobite tiste SKU, ki imajo samo 5 številk v svojih identifikatorjih: SKU?????
    • Ali pa, kot je prikazano na spodnji sliki zaslona, povlecite vse za vsakim "ea" v vsaki celici: ea*

    Izvleček datuma in časa iz časovnih žigov

    Kot bonus je na voljo manjše orodje, ki iz časovnih žigov izlušči datum in čas - imenuje se Split Date & Time.

    Čeprav je bil ustvarjen predvsem za delitev časovnih žigov, je popolnoma sposoben pridobiti eno od želenih enot posebej:

    Izberite eno od potrditvenih polj glede na to, kaj želite izvleči - datum ali čas - iz časovnih žigov v Google Sheets, in pritisnite Split . Zahtevana enota se bo kopirala v nov stolpec (ali pa bo nadomestila prvotne podatke, če izberete tudi zadnje potrditveno polje):

    To orodje je prav tako del dodatka Power Tools, tako da ko ga namestite za pridobivanje podatkov iz celic Google Sheets, je popolnoma pokrito. Če ne, pustite komentar in pomagali vam bomo :)

    Michael Brown je predan tehnološki navdušenec s strastjo do poenostavljanja kompleksnih procesov z uporabo programskih orodij. Z več kot desetletnimi izkušnjami v tehnološki industriji je svoje veščine izpopolnil v Microsoft Excelu in Outlooku ter Google Preglednicah in Dokumentih. Michaelov blog je namenjen deljenju svojega znanja in strokovnega znanja z drugimi ter ponuja preproste nasvete in vadnice za izboljšanje produktivnosti in učinkovitosti. Ne glede na to, ali ste izkušen strokovnjak ali začetnik, Michaelov blog ponuja dragocene vpoglede in praktične nasvete, kako kar najbolje izkoristiti ta osnovna programska orodja.