Split-funktio

Koskee seuraavia: Pohjaan perustuvat sovellukset Työpöytätyönkulut Mallipohjaiset sovellukset Power Platform CLI

Jakaa merkkijonon osamerkkijonojen taulukoksi.

Description

Split-funktio jakaa merkkijonon osamerkkijonojen taulukoksi. Split-funktiota käytetään pilkulla eroteltaviin luetteloihin, vinoviivalla jaettuihin päivämääriin tai erottamaan merkkijonot jollain muulla määritetyllä erottimella.

Merkkijono jaetaan osiin käyttämällä erotinta. Erotin voi muodostua nollasta merkistä, yhdestä merkistä tai useammasta merkistä, jotka yhdistetään kokonaisuutena merkkijonoon. Jos käytetään nollapituutta eli tyhjää merkkijonoa, kaikki merkit erotetaan toisistaan. Yhdistettyjä erotinmerkkejä ei palauteta tuloksen mukana. Jos erottimelle ei löydy vastinetta, koko merkkijono palautetaan yhtenä tuloksena.

Voit koota merkkijonon uudelleen käyttämällä Concat-funktiota (ilman erottimia).

Voit jakaa merkkijonon käyttämällä säännöllistä lauseketta MatchAll-funktion avulla.

Esimerkeissä näkyy, miten Split-toimintoa voidaan käyttää funktioiden First ja Last kanssa yksittäisen erotinmerkkejä sisältävän alimerkkijonon poimimiseen. Match-funktio on usein ytimekkäämpi ja tehokkaampi valinta säännöllisille lausekkeille.

Syntaksi

Split( Teksti, Separator )

  • Text – Pakollinen. Jaettava teksti.
  • Separator – Pakollinen. Merkkijonon jakamiseen käytettävä erotin. Voi olla nolla, yksi tai useampia merkkejä.

Esimerkit

Peruskäyttö

Kaava Kuvaus Tulos
Split( "Apples, Oranges, Bananas", "," ) Jakaa hedelmät erilleen pilkkuerottimen perusteella. Jako perustuu vain pilkkuun, ei sitä seuraavaan välilyöntiin, joten tuloksena on välilyönti "Appelsiinit"- ja "Banaanit” -merkkijonojen välillä. Yksisarakkeinen taulukko, jossa on sarake Value, jossa on seuraavat arvot: "Apples", " Oranges", " Bananas"
TrimEnds( Split( "Apples, Oranges, Bananas", "," ) ) Sama kuin edellisessä esimerkissä, mutta tässä tapauksessa Split-funktiolla aikaan saadussa yhden sarakkeen taulukossa on käytetty TrimEnds-funktiota, joka poisti välilyönnin. Olisimme voineet käyttää myös erotinta ",", johon sisältyy myös pilkun perässä oleva välilyönti, mutta se ei toimisi kunnolla, jos välilyöntiä ei ole tai niitä on kaksi. Yksisarakkeinen taulukko, jossa on sarake Value, jossa on seuraavat arvot: "Apples", " Oranges", " Bananas"
Split( "08/28/17", "/" ) Jakaa päivämäärän osat käyttämällä erottimena vinoviivaa. Yhden sarakkeen taulukko, jossa on Value-sarake, jossa on seuraavat arvot: "08", "28", "17"

Eri erottimet

Kaava Description Result
Split( "Hello, World", "," ) Jakaa sanat toisistaan käyttämällä erottimena pilkkua. Toisen tuloksen alussa on välilyönti, koska pilkun perässä oli välilyönti. Yhden sarakkeen taulukko, jossa on Value-sarake, jossa on seuraavat arvot: "Hello", " World"
Split( "Hello, World", "o" ) Jakaa merkkijonon käyttämällä erottimena kirjainta ”o”. Yhden sarakkeen taulukko, jossa on Value-sarake, jossa on seuraavat arvot: "Hell", ", W", "rld"
Split( "Hello, World", "l" ) Jakaa merkkijonon käyttämällä erottimena yksittäistä merkkiä ”l”. Koska kahden l-kirjaimen välissä ei ollut merkkejä Hello-sanassa, ohjelma palautti tyhjän arvon. Yhden sarakkeen taulukko, jossa on Value-sarake, jossa on seuraavat arvot: "He", Blank(), "o, Wor", "d"
Split( "Hello, World", "ll" ) Jakaa merkkijonon käyttämällä erottimena kaksoismerkkiä ”lI”. Yhden sarakkeen taulukko, jossa on Value-sarake, jossa on seuraavat arvot: "He", "o, World"
Split( "Hello, World", "%" ) Jakaa merkkijonon käyttämällä erottimena prosenttimerkkiä. Koska tätä erotinta ei näy merkkijonossa, koko merkkijono palautetaan yhtenä tuloksena. Yhden sarakkeen taulukko, jossa on Value-sarake, jossa on seuraava arvo: "Hello, World"
Split( "Hello, World", "" ) Jakaa merkkijonon käyttämällä erottimena tyhjää merkkijonoa (nolla merkkiä). Tämä erottaa merkkijonon jokaisen merkin toisistaan. Yhden sarakkeen taulukko, jossa on Value-sarake, jossa on seuraavat arvot: "H", "e", "l", "l", "o", ",", " ", "W", "o", "r", "l", "d"

Alimerkkijonon poiminta

Kaava Description Result
First( Split( Last( Split( "Bob Jones <bob.jones@contoso.com>", "<" ) ).Result, ">" ) ).Result Jakaa merkkijonon avaavan erottimen (<) perusteella ja poimii merkkijonon erottimen oikealta puolelta viimeiseksi. Tämän jälkeen kaava jakaa tuloksen sulkevan erottimen (>) perusteella ja poimii merkkijonon vasemmalla puolella olevan erottimen oikealla. "bob.jones@contoso.com"
Match( "Bob Jones <bob.jones@contoso.com>", "<(?<email>.+)>" ).email Suorittaa saman erottimeen perustuvan poiminnan kuin edellinen esimerkki, mutta käyttää Match-funktiota ja säännöllistä lauseketta. "bob.jones@contoso.com"