Fjern det første tegnet fra strengen i C ++

Fjern det første tegnet fra strengen i C ++
Noen ganger er det behov for å administrere et massivt volum av tekstdata i felt som beregningsspråklig lingvistikk, maskinlæring og dataanalyse. Så i C ++ brukes strenger og lister ofte for dette. Kanskje vi må fjerne de første opptredenene til et tegn fra en streng eller en liste over tegn. Gjennom denne artikkelen skal vi se på alternative metoder for å fjerne de første forekomstene av et tegn fra en streng i C++. Funksjonen fjerner det første tegnet på strengens innhold, noe som resulterer i en kortere streng.

Eksempel 1: Fjern det første tegnet fra strengen ved hjelp av Erase () -metoden i C++

Strengen :: Slettfunksjonen er den anbefalte metoden for å fjerne tegn fra en streng på plass. Overbelastning av omfang demonstreres i følgende C ++ -program:

La oss starte med programmets hovedfunksjon. Inne i hovedfunksjonen parenteser har vi definert en standard klassemal for å representere strengvariabelen som "strvalue". Strengvariabelen “strValue” initialiseres med ordens streng. Vi har en standard cout -setning som vil skrive ut strengen når den er initialisert. Deretter utførte vi slettemetoden på denne strengen, "strvalue".

Innenfor slettingsmetoden har vi passert 0 og 1 som et argument. Verdien “0” er indeksen for det første tegnet i strengen “strValue”, og verdien “1” er det første tegnet som er plassert i strengen. Etter det spesifiserte stedet vil slette -metoden slette den medfølgende lengden på tegnet fra strengen. Til slutt har vi en utskriftserklæring for å skrive ut strengen etter å ha fjernet det første tegnet.

#inkludere
#inkludere
int main ()

std :: streng strValue = "Happy Me";
std :: cout << "String Before:" << StrValue << std::endl;
Strvalue.slette (0, 1);
std :: cout << "String After:" << StrValue << std::endl;
retur 0;

Følgende utgang viser arbeidet med slettingsmetoden over en spesifisert streng. Som du kan se, er strengens første karakter blitt slettet:

Eksempel 2: Fjern det første tegnet fra strengen ved hjelp av iteratormetoden i C++

Nok et overbelastet alternativ til Erase () -metoden sletter iteratoren. Den godtar en iterator som en parameter og sletter karakteren som er spesifisert av den. Omganger iteratoren som peker på strengens første karakter, kan vi slette strengens første karakter.

Vi har brukt slettemetode i hovedfunksjonen til dette følgende programmet. Et standardformat for strengen er definert i hovedfunksjonen. Strengvariabelen er opprettet som "Stringis" og initialisert med strengene til tegn. Først har vi skrevet ut strengen før vi bruker slette iteratormetoden.

Deretter har vi påkalt slettingsmetoden til forrige streng. Slettingsmetoden har start iterator for "strvalue" -strengen og brukes til å returnere en iterator som peker på strengens første karakter. Når det første tegnet returneres, vil slette metoden fjerne tegnet fra strengen. Etter det blir strengen skrevet ut, og har fjernet den første tegnet.

#inkludere
#inkludere
int main ()

STD :: String Stringis = "Programmeringseksempel";
std :: cout << "String Before: " << StringIs << std::endl;
Stringis.Slett (Stringis.begynne());
std :: cout << "String After: " << StringIs << std::endl;
retur 0;

Skallet har vist utgangen, som viser strengen før slette iteratormetoden og etter at det første tegnet er fjernet fra strengen.

Eksempel 3: Kontroller den tomme strengen for å fjerne det første tegnet fra strengen i C++

Før du bruker strengen :: Slettfunksjon, må du sørge for at det ikke er en tom streng. Hvis inngangssekvensen er tom, kaster programmet en STD :: Lengdefeil unntak.

Programmet inkluderer hovedfunksjonen der strengvariabelen “Mystr” er erklært. Strengen initialiseres også med strengtegn når den er erklært. Strengverdien vil bli skrevet ut på skallet. Etter det har vi en IF -uttalelse der tilstanden blir brukt på den gitte strengen.

Vi har kalt den tomme metoden i IF -tilstanden for å sjekke at strengen ikke skal være tom. Deretter brukes slette iteratormetoden over strengen og fjerner det første tegnet fra den spesifiserte strengen. Strengen blir skrevet ut på skallskjermen med det første tegnet fjernet fra strengen.

#inkludere
#inkludere
int main ()

std :: String mystr = "Rainbow";
std :: cout << "String Before:" << MyStr << std::endl;
hvis (!Mystr.tom ())
Mystr.Slett (Mystr.begynne());

std :: cout << "String Now:" << MyStr << std::endl;
retur 0;

Vi har følgende utgangsstrenger.

Eksempel 4: Fjern det første tegnet med det matchende tegnet i C++

Nå har vi et eksempel for å fjerne den opprinnelige karakteren hvis det tilsvarer et spesifikt tegn ved å bruke følgende syntaks:

Strengvariabelen initialiseres med strengverdien og tildeles et navn "Navn" i følgende programs hoved. Vi har vist strengen med cout -kommandoen. Deretter har vi definert en annen variabel, “CH”, med Char -datatypen. Char -variabelen “CH” tildeles et tegn “K” matchet med den første tegnet i forrige streng.

Deretter brukes IF -setningen for å sjekke tilstanden at karakterverdien “K” stemte overens med den første karakterverdien til strengen. Vi har front () -funksjonen, som brukes til å få den første tegnet i strengens referanse. Strengens første karakter vil deretter bli eliminert ved hjelp av slette iterator.

#inkludere
#inkludere
int main ()

std :: String name = "Kalsoom";
std :: cout << "Name Before: " << Name << std::endl;
char ch = 'k';
hvis (navn.front () == ch)
Navn.Slett (navn.begynne());

std :: cout << "Name Now: " << Name << std::endl;
retur 0;

Som du kan se, er det første tegnet som er fjernet fra strengen som følger:

Eksempel 5: Fjern det første tegnet fra strengen ved hjelp av substr () -metoden i C++

Strengen er modifisert ved hjelp av strengen :: Slettingsmetoden på plass. Ved hjelp av strengen :: substr -funksjonen kan du hente en duplikat av strengen uten den siste tegnet.

Vi har brukt substr -funksjonen over strengen “MyString” i IF -tilstandsblokken. Substr -funksjonen har passert med den første karakterposisjonen og lengden på strengen til -1. Den returnerer en nyopprettet streng fra innringersstrengobjektet som inneholder de spesifiserte tegnene.

#inkludere
#inkludere
int main ()

std :: String myString = "Bringing";
std :: cout << "Original String: "<< MyString << std::endl;
std :: streng n;
hvis (!MyString.tom ())
n = myString.substr (1, myString.størrelse () - 1);

std :: cout << "Changed String: " << n << std::endl;
retur 0;

Substr -metoden fjernet den første forekomsten av tegnet fra strengen, som vist i følgende skall:

Konklusjon

I C ++ lærte vi de alternative metodene for å fjerne den opprinnelige tegnet fra en streng. Disse metodene returnerer samme utgang, men implementerer annerledes i C ++ -programmer. Dette er effektive C ++ -metoder for å slette de første forekomstene av et tegn fra en streng. Vi håper at disse metodene vil være gunstige for deg.