Excel Formulas Academy · Oppitunti

Kuvioiden poimiminen REGEXEXTRACT-funktiolla

Poimi merkkijonosta kuvioita vastaava osa

Oppitunti 2/413 vaihetta

Kuvioiden poimiminen REGEXEXTRACT-funktiolla on ilmainen Excel Formulas Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Excel Formulas Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Excel Formulas Academy-kurssilla on yhteensä 4 oppituntia.

Kyllä/ei-vastauksesta osuman poimimiseen

REGEXMATCH kertoo, onko kuvio tekstissä. Usein haluatte itse osuvan tekstin, kuten merkkijonon Order #4821 numerot tai sähköpostiosoitteen verkkotunnuksen.

Siihen tarvitaan REGEXEXTRACT. Se etsii tekstistä ensimmäisen kuvioon sopivan osan ja palauttaa kyseisen osan solun arvoksi.

Tämäkin on Google Sheetsin funktio. Se on yksi siisteimmistä tavoista poimia rakenteisia osia epäsiisteistä tuoduista tiedoista.

REGEXEXTRACT-funktion syntaksi

REGEXEXTRACT(text, pattern) palauttaa tekstin ensimmäisen alimerkkijonon, joka vastaa kuviota.

Jos mikään ei vastaa kuviota, funktio palauttaa tyhjän arvon sijaan #N/A-virheen. Tämä on tärkeää muistaa.

Alla oleva kaava poimii A2:sta ensimmäisen numerosarjan. Merkkijonosta Order 4821 se palauttaa arvon 4821.

=REGEXEXTRACT(A2, "\d+")

Se palauttaa tekstiä, ei lukua

REGEXEXTRACT palauttaa aina tekstiä, vaikka osuvat merkit olisivat numeroita. Siksi 4821 palautuu tekstijonona, ei lukuna, jonka voisitte laskea yhteen.

Muuttakaa tulos varsinaiseksi luvuksi käärimällä kaava VALUE-funktion ympärille. Alla oleva kaava poimii numerot ja muuntaa ne, jotta voitte laskea tuloksella.

=VALUE(REGEXEXTRACT(A2, "\d+"))

Kirjainten tai koodien poimiminen

Kuviot eivät rajoitu numeroihin. Kun haluatte poimia isoista kirjaimista koostuvan etuliitteen, käyttäkää luokkaa ja toistomääritettä.

Alla oleva kaava poimii koodin INV2024 alussa olevat kirjaimet ja palauttaa arvon INV. [A-Z]+ tarkoittaa yhtä tai useampaa peräkkäistä isoa kirjainta.

=REGEXEXTRACT(A2, "[A-Z]+")

Toimiva esimerkki: tuotekoodin jakaminen

Oletetaan, että A2 sisältää arvon SKU-4821-RED ja haluatte poimia vain keskellä olevat numerot. Voitte kuvata niiden sijainnin käyttämällä kuviossa ympäröivää kontekstia.

Alla oleva kaava etsii yhdysmerkkien välissä olevat numerot ja palauttaa arvon 4821. Kirjaimelliset yhdysmerkit ohjaavat moottorin oikean numerosarjan luo.

=REGEXEXTRACT(A2, "-(\d+)-")

Kaappausryhmät palauttavat vain halutun osan

Huomaa viimeisen kaavan sulkeet: (\d+). Ne muodostavat kaappausryhmän.

Kun kuvio sisältää kaappausryhmän, REGEXEXTRACT palauttaa vain sulkeiden sisällön, ei koko osumaa. Siksi -(\d+)- palauttaa 4821 ja jättää väliviivat pois.

Kaappausryhmien avulla voit täsmäyttää ympäröivän kontekstin tarkasti ja poimia silti vain tarvitsemasi osan.

=REGEXEXTRACT(A2, "-(\d+)-")

Toimiva esimerkki: poimi sähköpostin verkkotunnus

Osoitteesta sam@coddykit.com haluat verkkotunnuksen coddykit.com. Etsi ensin @-merkki ja kaappaa sitten kaikki sen jälkeinen merkkijonon loppuun asti.

Alla oleva kaava palauttaa A2:n osan, joka seuraa at-merkkiä. (.+) kaappaa yhden tai useamman merkin, ja $ sitoo osuman merkkijonon loppuun.

=REGEXEXTRACT(A2, "@(.+)$")

Ankkurit tekevät poiminnasta täsmällistä

Ankkurit auttavat poimimaan osan tunnetusta kohdasta. Jos haluat kaapata vain ensimmäisen sanan, ankkuroi kuvio alkuun ja lopeta ensimmäiseen välilyöntiin.

Alla oleva kaava kaappaa A2:n alussa olevat merkit, jotka eivät ole välilyöntejä. Arvolla John Smith se palauttaa John. [^ ]+ tarkoittaa yhtä tai useampaa merkkiä, joka ei ole välilyönti.

=REGEXEXTRACT(A2, "^([^ ]+)")

Suojaudu osumien puuttumiselta

Koska epäonnistunut poiminta aiheuttaa virheen #N/A, kaavan vetäminen alaspäin sarakkeessa, jossa on erityyppisiä tietoja, voi täyttää taulukkosi virheillä.

Voit antaa siistin varatuloksen käärimällä kutsun IFERROR-funktion sisään. Alla oleva kaava palauttaa numerot, jos niitä löytyy, tai tyhjän merkkijonon, jos niitä ei ole.

=IFERROR(REGEXEXTRACT(A2, "\d+"), "")

Poiminta vaihtoehtoisilla osumilla

Pystyviiva | tarkoittaa tai. Sen avulla yksi kuvio voi täsmätä useisiin vaihtoehtoihin. Tämä on hyödyllistä, kun koodi voi alkaa eri etuliitteillä.

Alla oleva kaava poimii A2:sta sen tilaussanan, joka esiintyy: OPEN, CLOSED tai HOLD. Se palauttaa ensimmäisen löytyvän sanan.

=REGEXEXTRACT(A2, "OPEN|CLOSED|HOLD")

Tietojen poiminta koko sarakkeesta

REGEXEXTRACT on parhaimmillaan, kun sitä käytetään kokonaisen tuontitietosarakkeen käsittelyyn. Jokaiselta riviltä poimitaan osuva osa siistiin uuteen sarakkeeseen, jonka voit lajitella tai analysoida.

Oletetaan, että sarakkeessa A on tilausmerkkijonoja, kuten Order 4821 - shipped. Kun alla oleva kaava vedetään alas sarakkeessa B, se poimii jokaiselta riviltä vain tilausnumeron ja muodostaa epäsiististä lähdetekstistä siistin, numerolta näyttävän sarakkeen.

=REGEXEXTRACT(A2, "Order (\d+)")

Pikatarkistus

Tarkista, mitä tiedät osumien poimimisesta.

Kertaus: poimi osuva osa

Opit, että REGEXEXTRACT(text, pattern) palauttaa Google Sheetsissä ensimmäisen osuvan alimerkkijonon. Tärkeimmät asiat:

  • Tulos on aina tekstiä; käytä lukuihin VALUE-funktiota
  • Sulkeissa olevat kaappausryhmät palauttavat vain sisäosan
  • Osumattomuus antaa virheen #N/A, joten suojaa kaava IFERROR-funktiolla
  • | mahdollistaa useiden vaihtoehtojen täsmäyttämisen yhdellä kuviolla

Seuraavaksi siirryt lukemisesta tekstin muokkaamiseen paikan päällä REGEXREPLACE-funktion avulla.

Aloita maksutta

Opi Excel tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
30
Oppitunnit
120

Usein kysytyt kysymykset

Onko oppitunti ”Kuvioiden poimiminen REGEXEXTRACT-funktiolla” ilmainen?

Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Excel Formulas Academy-oppimispolun 3 oppituntia, myös oppitunnin “Kuvioiden poimiminen REGEXEXTRACT-funktiolla”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Excel Formulas Academy-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Kuvioiden poimiminen REGEXEXTRACT-funktiolla”?

Poimi merkkijonosta kuvioita vastaava osa Harjoittelet Excel Formulas Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Excel Formulas Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Excel Formulas Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.

Kuinka kauan ”Kuvioiden poimiminen REGEXEXTRACT-funktiolla”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Excel Formulas Academy-oppitunnilla?

Kyllä. Jokainen Excel Formulas Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Kuvioiden testaaminen REGEXMATCH-funktiolla
  2. Kuvioiden poimiminen REGEXEXTRACT-funktiolla
  3. Kuvioiden korvaaminen REGEXREPLACE-funktiolla
  4. Sekavan datan jakaminen ja siistiminen
← Takaisin: Excel Formulas Academy