Usuń pierwszy znak z ciągu w C ++

Usuń pierwszy znak z ciągu w C ++
Czasami istnieje potrzeba zarządzania ogromną liczbą danych tekstowych w polach, takich jak językoznawstwo obliczeniowe, uczenie maszynowe i analiza danych. Tak więc, w C ++, ciągi i listy są do tego powszechnie używane. Być może musimy usunąć początkowe występy postaci z ciągu lub listy znaków. W tym artykule przyjrzymy się alternatywnym metodom usuwania pierwszych instancji postaci z łańcucha w C++. Funkcja usuwa pierwszy znak zawartości ciągu, co skutkuje krótszym ciągiem.

Przykład 1: Usuń pierwszy znak z ciągu za pomocą metody Erase () w C++

String :: Funkcja usuwania jest zalecaną metodą usuwania znaków z ciągłego ciągu. Przeciążenie zakresu pokazano w następującym programie C ++:

Zacznijmy od głównej funkcji programu. Wewnątrz głównych nawiasów funkcji zdefiniowaliśmy standardowy szablon klasy, aby reprezentować zmienną ciągów jako „straża”. Zmienna łańcuchowa „strGalue” jest inicjowana z ciągiem słów. Mamy standardową instrukcję Cout, która wydrukuje ciąg podczas jego inicjowania. Następnie przeprowadziliśmy metodę usuwania tego ciągu „StrValue”.

W ramach metody wymazania minęliśmy 0 i 1 jako argument. Wartość „0” jest indeksem pierwszego znaku w ciągu „strValue”, a wartość „1” jest pierwszym znakiem umieszczonym w ciągu. Po określonej lokalizacji metoda wymazania usunie dostarczoną długość znaku z ciągu. W końcu mamy instrukcję drukowania do wydrukowania ciągu po usunięciu pierwszego znaku.

#włączać
#włączać
int main ()

STD :: String strvalue = „Happy Me”;
STD :: Cout << "String Before:" << StrValue << std::endl;
Straża.usunąć (0, 1);
STD :: Cout << "String After:" << StrValue << std::endl;
powrót 0;

Poniższe dane wyjściowe pokazuje działanie metody usuwania przez określony ciąg. Jak widać, początkowy charakter ciągu został usunięty:

Przykład 2: Usuń pierwszy znak z łańcucha za pomocą metody iteratora w C++

Kolejna przeciążona alternatywa metody Erase () wymazuje iterator. Akceptuje iterator jako parametr i usuwa charakter określony przez niego. Omijając iterator wskazujący na pierwszą postać łańcucha, możemy usunąć pierwszą postać sznurka.

Zastosowaliśmy metodę usuwania w głównej funkcji tego następującego programu. Standardowy format łańcucha został zdefiniowany w głównej funkcji. Zmienna ciągu jest tworzona jako „stringis” i inicjowana z ciągami znaków. Najpierw wydrukowaliśmy ciąg przed zastosowaniem metody usuwania iteratora.

Następnie powołaliśmy się na metodę usuwania poprzedniego ciągu. Metoda usuwania ma iterator początkowy dla ciągów „strGalue” i służy do zwrócenia iteratora, który wskazuje pierwszą postać łańcucha. Po zwróceniu pierwszego znaku metoda usuwania usunie znak z ciągu. Następnie ciąg zostanie wydrukowany, a usunięcie pierwszego znaku.

#włączać
#włączać
int main ()

std :: String Stringis = "Przykład programowania";
STD :: Cout << "String Before: " << StringIs << std::endl;
Stringis.usuń (stringis.zaczynać());
STD :: Cout << "String After: " << StringIs << std::endl;
powrót 0;

Powłoka wyświetliła wyjście, która pokazuje ciąg przed metodą iteratora usuwania i po usunięciu pierwszego znaku z ciągu.

Przykład 3: Sprawdź pusty ciąg, aby usunąć pierwszy znak z ciągu w C++

Przed użyciem funkcji String :: Upewnij się, że nie ma pustego ciągu. Jeśli sekwencja wejściowa jest pusta, program rzuca wyjątek STD ::.

Program zawiera główną funkcję, w której zadeklarowana jest zmienna łańcuchowa „MyStr”. Ciąg jest również inicjowany z znakami ciągów, gdy jest zadeklarowany. Wartość ciągu zostanie wydrukowana na powładzie. Następnie mamy instrukcję IF, w której warunek jest stosowany w danym ciągu.

Nazwaliśmy pustą metodę wewnątrz IF Warunek, aby sprawdzić, czy ciąg nie powinien być pusty. Następnie metoda iteratora wymazania jest używana przez ciąg i usuwa pierwszy znak z określonego ciągu. Ciąg zostanie wydrukowany na ekranie powłoki z pierwszym znakiem usuniętym z ciągu.

#włączać
#włączać
int main ()

std :: String mystr = "Rainbow";
STD :: Cout << "String Before:" << MyStr << std::endl;
Jeśli (!Mystr.pusty())
Mystr.usuń (Mystr.zaczynać());

STD :: Cout << "String Now:" << MyStr << std::endl;
powrót 0;

Mamy następujące ciągi wyjściowe.

Przykład 4: Usuń pierwszy znak z pasującym znakiem w C++

Teraz mamy przykład usunięcia początkowego znaku, jeśli odpowiada on określonego znaku, przy użyciu następującej składni:

Zmienna ciągu jest inicjowana w wartości ciągu i przypisana nazwa „nazwa” w głównym programie następującego programu. Wyświetliliśmy ciąg z poleceniem Cout. Następnie zdefiniowaliśmy inną zmienną „CH”, z typem danych char. Zmienną Char „CH” przypisuje się znak „K” dopasowany do pierwszego znaku poprzedniego ciągu.

Następnie instrukcja IF jest używana do sprawdzenia warunku, że wartość znaku „K” dopasowana do pierwszej wartości znaku ciągu. Mamy funkcję front (), która służy do uzyskania pierwszego znaku w odniesieniu do ciągu. Początkowy znak ciągu zostanie następnie wyeliminowany za pomocą iteratora usuwania.

#włączać
#włączać
int main ()

std :: String name = "kalsoom";
STD :: Cout << "Name Before: " << Name << std::endl;
char ch = „k”;
if (nazwa.front () == ch)
Nazwa.usuń (nazwa.zaczynać());

STD :: Cout << "Name Now: " << Name << std::endl;
powrót 0;

Jak widać, pierwszy znak usunięty z łańcucha jest następujący:

Przykład 5: Usuń pierwszy znak z ciągu za pomocą metody substr () w C++

String jest modyfikowany za pomocą ciągu :: na miejscu. Korzystając z funkcji String :: Substr, możesz odzyskać duplikat ciągu bez ostatniego znaku.

Użyliśmy funkcji substr nad ciągiem „MyString” w bloku Warunki IF. Funkcja substr przeszła z pierwszą pozycją znaku i długością ciągu do -1. Zwraca nowo utworzony ciąg z obiektu ciągnika, który zawiera określone znaki.

#włączać
#włączać
int main ()

STD :: String MyString = „przyniesienie”;
STD :: Cout << "Original String: "<< MyString << std::endl;
std :: String n;
Jeśli (!MyString.pusty())
n = MyString.substr (1, MyString.size () - 1);

STD :: Cout << "Changed String: " << n << std::endl;
powrót 0;

Metoda substr usunęła pierwsze występowanie znaku z ciągu, jak pokazano w następującej powładzie:

Wniosek

W C ++ nauczyliśmy się alternatywnych metod usuwania początkowego znaku z ciągu. Metody te zwracają to samo wyjście, ale wdrażają inaczej w programach C ++. Są to wydajne metody C ++ do usuwania początkowych instancji znaku z ciągu. Mamy nadzieję, że te metody będą dla Ciebie korzystne.