C# Strengsplitt

C# Strengsplitt
I C#dannes en substring som er en del av strengen på mange måter. For eksempel bruker vi en innebygd funksjon av strenger som er selve substringen (). Det er forskjellige måter å lage en substring. En av dem er ved å bruke en delt metode for streng. Dette er også en innebygd funksjon.

Delt funksjon ()

Denne funksjonen hjelper til med å gjøre underlag gjennom separasjonen av strengen på et bestemt punkt. Disse punktene er den delen av strengen; De er valgt som avgrensere eller separatorer. Separatorene kan være hvilken som helst karakter eller en rekke tegn. Med andre ord, de symbolene som vil dele en enkelt streng i to strenger er en separator. Split () -funksjonen genererer en rekke strenger som opprettes ved å dele en original inngangsstreng (substring).

# Split (separator, telling, strengsplitoptions -alternativer);

Parametere for delt funksjon

  • Separator: Den skiller delene av en streng ved å generere underlag.
  • Teller: Det brukes til å kontrollere hvor mange strenger som skal genereres. Det er et valgfritt argument. En delt funksjon kan brukes uten denne parameteren.
  • Alternativer: Dette er også en valgfri parameter. Det brukes når du vil utelate tomme elementer i matrisen. Hvis du vil inkludere plassen, blir verdien av dette argumentet tatt som ingen.

Implementering av Split () -funksjonen

Eksempel 1

Konseptet med strengsplitting brukes i C Sharp ved å definere bibliotekene og klassene inni den. En strengdatatypevariabel initialiseres med en streng med tegn av alfabeter og symboler. Delte strengfunksjoner på en slik måte at den gjør strengen i deler avhengig av tilstanden vi bruker. For eksempel erklærte vi en streng med et dobbelt kolonskilt etter hvert ord i hele setningen.

# Streng tekst = "i :: am :: a :: innhold :: skribent";

Vi vil bruke denne strengen i delingsfunksjonen for å dele strengen ved tykktarmspunktet slik at strengen blir delt inn i alle mulige deler.

# Streng [] resultat = tekst.dele("::");

Strengtypevariabelen som vil lagre resultatet blir tatt som en matrise fordi vi før deling er uvitende om delene som kan dannes etter partisjon. Splits funksjon kalles gjennom objektet til strengen som er opprettet først og inne i parameteren, det symbolet føres for å sikre at partisjoneringen på det aktuelle punktet. Dette symbolet er en dobbel kolon.

Etter delingsprosessen vil vi vise innholdet som er til stede inne i strengarrayen. En 'for hver' -løkke brukes til å vise hvert ord i resultatarrayen.

# Foreach (String str i resultatet);

Hver linje vil inneholde hvert ord separat etter å ha brukt delt funksjon. Lagre denne koden i tekstfilen med utvidelsen av C Sharp ('.cs '). I Linux trenger vi en MCS -kompilator for sammenstilling av noen .CS -fil. Etter at koden er samlet, vil vi utføre den gjennom mono ved å bruke filen med '.exe 'utvidelse for å gjøre filen kjørbar.

$ MCS -fil.CS
$ mono -fil.EXE

Ved utførelse kan du se at hver linje vil vise et enkelt ord med tegn som ble skilt av dobbeltkolon. Delingsfunksjonen vil ikke vise punktet der den brukes. For eksempel kan du se at de resulterende verdiene ikke inneholder tykktarmssymbolet i dem.

Ikke bare har et enkelt symbol, men splittfunksjonen fungerer også på flere symboler om gangen. Det avhenger av brukerens valg av å ha symbolet eller en alfanumerisk verdi for strengen for å bli delt ut ved hjelp av tegnet. Etter den samme tilnærmingen til variabel erklæring, brukte vi en annen streng sammen med antall separatorer.

# Strengtekst = "C Sharp, er.et / interessant*språk ";

Vi brukte ',', '/', '*', full stopp og et tomt rom som separatorer slik at strengen blir delt på disse punktene. Splittfunksjonen vil inneholde alle symbolene som en parameter.

# Streng [] resultat = tekst.split (", ',', '.','/','*');

Resultatet vil være det samme som forrige eksempel. Hvert ord skilles gjennom symbolene vi nevnte.

Eksempel 2

I motsetning til symbolseparasjonen, bruker vi nå ordet tegn for å skille delen av strengene fra hverandre.

En enkel streng vil bli tilordnet variabelen fra strengtype. Denne gangen for å fremheve separatorene, vil vi bruke en strengtype -matrise for å ta separatorens verdier i den. Deretter brukes disse strengeseparatorene som en parameter inne i delingsfunksjonen. I dette eksemplet har vi tatt to separatorer 'for' og 'C'. Disse separatorene vil dele strengen i to deler.

# Streng [] resultat = tekst .split (separatorer, strengsplitoptions.Ingen);

Igjen vil Foreach Loop bli brukt til å vise gjenstandene i matrisen. På utførelsen vil vi se at to strenger er opprettet uten de to ordene som fungerte som separatorer.

Å bruke separatorer, enten de er symboler eller andre tegn i strengen, er en del av strengen med mindre du erklærer at separatorene deres. Deretter er de ikke mer en del av strengen ved å bruke delt funksjon.

Eksempel 3

Det er ikke nødvendig å dele strengen bare ved å bruke separatorene direkte i funksjonene, og disse separatorene forårsaker inndelingen tilfeldig. Vi kan administrere delingsfunksjonen for å dele strengen gjennom separatorer ved å gi nummeret til å skille i henhold til antallet som er gitt.

Dette blir referert til som 'Count' -parameteren. Så vi erklærte en streng her som er en blanding av symboler og alfabeter. Men som separatorer valgte vi bare to symboler her. ':' og '!'.

Vi opprettet maksimalt tre delstrenger. Denne funksjonen vil ta separatorene og antall underlag du vil lage.

# Streng [] resultat = tekst.Split (separatorer, 3, Stringsplitoptions.Ingen);

Bruk sløyfen for å vise elementene i strenggruppen. Du kan se at i henhold til disse to separatorene opprettes tre underlag. Hver substring skilles gjennom de to symbolene vi har gitt, mens andre tegn vises som en del av strengen. På denne måten kan vi filtrere bruken av separatorer i strengene for å bli delt.

Unntak som skjer i split () -funksjon

Mens du bruker denne funksjonen, er det sjanser for noen unntak angående parametrene.

Hvis telleverdien er negativ, oppstår feilen i argumentOutOfRangeException. Hvis den valgfrie parameteren ikke inneholder StringsPlitOptions -verdien, oppstår en feil av ArgumentExcpetion.

Konklusjon

En streng er delt inn i deler eller underlag ved å dele den i deler. Dette gjøres av en delt funksjon. Denne funksjonen oppnås ved å spesifisere tegnene vi vil skille strengen, dette er separatorene. Disse separatorene er essensielle parametere for strengdelingsfunksjonen. Vi forklarte den splittede funksjonen som fungerer på forskjellige måter gjennom symbolene, ordene og telletallet som parametere. For å unngå unntakene i den resulterende verdien, må telleverdien være positiv.