Streng: Streng er en rekke tegn. Et par eksempler på strenger er:
“New Delhi er hovedstad i India”Avgrensende: Enhver karakter eller sett med karakterer kan betraktes som avgrenser. Hvis en streng skal deles ut basert på avgrenser, bør avgrenseren være en del av strengen, ellers vil full streng være utgangsstrengen.
Vanlige brukte avgrensningseksempler er: ““ (plass) ,, (komma), '\ n' (ny linje) og mange flere.
Splitting strengen basert på avgrenser:
La oss betrakte en eksempelstreng som "Fox lever i skog" og avgrensning som "" (plass), så vil strengen dele seg i flere strenger. Flere strenger etter splitt.
Så nå er vi klare på begrepet splitting, og vi er også klare på strengen og avgrensningsdefinisjonen. La oss fortsette med å utforske implementeringen av splitting i C.
Standard C -funksjon for splittelse basert på avgrenser:
C gir Strtok () Funksjon, som kan brukes til å dele strengen i symboler basert på den valgte avgrenseren.
Funksjonsprototype:
Char *Strtok (Char *Begrensning str, const char *begrenser Delim);Header skal inkluderes:
#inkludereC -program for å dele strengen basert på avgrenser ved bruk av strtok ():
#inkludereC -programmets øyeblikksbilde:
Utgang fra programmet:
La oss nå diskutere vår egen implementering til Split String basert på avgrensning uten å bruke standard C -funksjonen (Strtok ()).
Vi må søke i avgrensende tilstedeværelse i strengen og kan returnere adressen til det første tegnet på strengtokenet rett før avgrenseren.
C -funksjon for å søke på symbolet basert på avgrenser kan implementeres som nedenfor:
char *search_token (char *streng, char *delim)Over er søkefunksjonen for å søke etter tokenet, når token er funnet karakter før tokenet kan kopieres og hentes fra kildestrengbufferen.
Komplett C -program med implementeringen vår vil se ut nedenfor:
#inkludereUtgang fra programmet ovenfor med samme inngangssett som standard C Strtok -funksjon:
Bash-4.2 $ ./en.uteStillbilder av det komplette programmet:
Utgangssnapsbilde:
Konklusjon:
Så langt diskuterte vi om splittingen av strengen basert på avgrenser. Det er allerede tilgjengelige bibliotekmåter å gjøre det på. Bibliotekfunksjonen som kan brukes til å dele strengen basert på avgrenser er strtok. Vi tok et eksempel på brukssak for å forstå bibliotekfunksjonen strtok. Vi skrev også et eksempelprogram for å forstå bruken av bibliotekfunksjon.
Andre del implementerte vi vår egen metode for å splitte strengen basert på avgrenser. Vi skrev en funksjon som er som C -funksjon Strtok. Forklaring av funksjonen til den tilpassede funksjonen ble gitt og demonstrert ved hjelp av den samme hovedfunksjonen som ble tatt i tilfelle C -bibliotekfunksjon. Eksempelutgang for programmet er også utstyrt med eksempelprogrammet.
Vi har også gått gjennom konseptet med strengdelte basert på avgrenser, bare for å oppsummere ethvert tegn som er søk i hovedstrengen kan betraktes som et symbol og kan søkes til tokenet oppstår. Når symbolet er funnet, er streng før tokenet returneres til innringerfunksjonen.