Istnieje kilka metod usuwania symboli interpunkcyjnych ze sznurka w C++. W tym artykule przejdziemy przez sposób usunięcia znaków interpunkcyjnych z ciągu przy użyciu różnych metod w C++.
Przykład 1: Program metody w stylu C w celu usunięcia interpunkcji w C++
Ta implementacja eliminuje wszystkie symbole oprócz alfabetów z łańcucha za pomocą metody ciągów w stylu C wprowadzonym przez użytkownika.
Najpierw mamy główną metodę programu. Na podstawie mamy tablicę charytatywną jako „strline” i ustawiamy limit tablicy charytatywnej na „50”. Ponadto zdefiniowaliśmy kolejną tablicę charytatywną, „Charstring” z limitu „50”. Następnie zmienna „int” jako „n” i zainicjuj ją z zero. Polecenie Cout wydrukuje instrukcję „Wprowadź ciąg” dla użytkownika. Przez cin.Uzyskaj podejście, użytkownik wprowadzi ciąg. String wprowadzony przez użytkownika zostanie sprawdzony w stanie pętli, który sprawdzi, czy znak „strine” nie znajduje się na końcu ciągu.
Wówczas instrukcja IF wykonuje warunek, że wprowadzony ciąg ma małe i wielkie alfabet i sprawdź, czy ciąg ma tylko znaki, czy nie. Zainicjowaliśmy tablicę „Charstring” z zerowymi znakami, na których program zakończył się jako ciąg, ma swoją wartość końcową zero znaków.
#włączaćString wprowadzony przez użytkownika ma kilka znaków interpunkcyjnych, które są usuwane w wynikającym z tego ciągu metodą w stylu C.
Przykład 2: Program użycia metody STD :: DESPEME_IF w celu usunięcia interpunkcji w C++
Prostą opcją usunięcia interpunkcji z łańcucha jest wykorzystanie standardowego algorytmu „STD :: DESPINE_IF” z String :: Erase Member Funkcja. Ponieważ algorytm „STD :: DESPEM_IF” nie ma dostępu do kontenera ciągu, może usunąć tylko znaki interpunkcyjne w ciągu. Wyświetla iterator wskazujący, gdzie powinno być zakończenie, co można usunąć za pomocą metody STD ::.
Główna metoda tego programu ma standardowy sposób klasowego struktury, aby deklarować ciąg jako „MyString” i zainicjowanie go z ciągiem zawierającym jakiś znak interpunkcyjny. Następnie mamy zmienną typu „Auto” jako „Usuń”, zastosowaliśmy metodę std :: remove_if. W metodzie mamy funkcję początkowa () dla pierwszych znaków iteratora łańcucha i end () dla ostatniego iteratora znaków dla ciągu „MyString”. Mamy tablicę Const Const of Reference Zmienna „S”. Tworzy kopię każdej postaci.
ISPUNT () jest następnie wywoływany w celu sprawdzenia tablicy zawierającej elementy to charakter. Po tej metodzie usuwania jest stosowana, która usuwa interpunkcję od sznurka do ostatniego znaku sznurka.
#włączaćCiąg pokazany na obrazie nie ma symbolu interpunkcyjnego; Tylko ciąg z znakami jest zwracany.
Przykład 3: Program używania odwrotnej pętli do usunięcia interpunkcji w C++
Alternatywnie możemy użyć konwencjonalnej pętli, aby zlokalizować interpunkcje w danym ciągu i usunąć je za pomocą metody String ::. Pętla powinna być odwrotna, aby uniknąć wydajności niedokerministycznej podczas usuwania komponentów podczas iteracji.
Ciąg jest zdefiniowany z nazwą „String_str” jak w standardowej klasie ciągu, a ciąg zawiera ciąg z niektórymi znakami alfabetu i niektórymi symbolami interpunkcyjnymi. Po deklaracji ciągu mamy pętlę, która będzie iterowana nad każdym znakiem ciągu w kolejności odwróconej. Następnie mamy funkcję Ispunct, która weryfikuje znaki interpunkcyjne w określonym ciągu w stanie IF. Jeśli zostanie znaleziony jakikolwiek znak interpunkcyjny, zostanie wymazany w funkcji wymazania.
#włączaćWynikowy ciąg nie ma znaku interpunkcyjnego, jak pokazano na poniższym obrazie.
Przykład 4: Program wykorzystujący funkcję niestandardową do usunięcia interpunkcji w C++
Alternatywnie, poprzednią procedurę można przenieść do osobnej funkcji, która generuje lokalną kopię ciągu i działa na niej, zwracając sformatowaną wartość do oryginalnego kodu. Funkcja niestandardowa służy do ulepszenia funkcji, aby włączyć odrębne zestawy znaków, a nawet do przekazania niestandardowej funkcji kryterium dla trzeciego parametru algorytmu usuwania.
Mamy definicję funkcji jako „Usuń pozycję” w następującym programie i przekazaliśmy odniesienie ciągów „Str” jako parametr. W funkcji mamy „temp” jako funkcję, do której przekazujemy „Str. Następnie mamy funkcję usuwania wywoływania funkcji STD :: usuń_if.
Następnie mamy główną metodę, w której zdefiniowaliśmy i zainicjowaliśmy ciąg „treści”. Ponadto funkcja wywołała tutaj funkcję powyżej określoną „Usuń Kuntacje”, do której przekazuje się ciąg „Treść”. Przetestowany ciąg zostanie wydrukowany po usunięciu symboli interpunkcyjnych.
#włączaćString z znakami interpunkcyjnymi i ciąg bez znaków interpunkcyjnych są wyświetlane tutaj na ekranie wyjściowym.
Wniosek
Podsumowując, omówiliśmy wiele sposobów w C ++, aby usunąć znaki interpunkcyjne z ciągu. Możesz użyć czterech wyżej wymyślonych metod usuwania wszystkich znaków interpunkcyjnych z łańcucha. Te metody dają filtr-out-out strain interpunkcji w C++. Czytając artykuł, możesz odkryć, które z tych podejść jest wygodniejsze.