Strunowy: String to szereg znaków. Kilka przykładów strun to:
„New Delhi jest stolicą Indii”SYMITER: Każda postać lub zestaw znaków można uznać za ogranicznik. Jeśli ciąg ma zostać podzielony na podstawie ogranicznika, wówczas delimiter powinien być częścią ciągu, w przeciwnym razie pełny ciąg będzie ciągiem wyjściowym.
Powszechnie używane przykłady ograniczające są: „(przestrzeń) ,, (przecinek),„ \ n ”(nowa linia) i wiele innych.
Podzielanie łańcucha na podstawie delimiter:
Rozważmy przykładowy ciąg jako „Fox żyje w lesie” i ograniczając jako „” (przestrzeń), wówczas ciąg podzielony na wiele strun. Wiele sznurków po splicie to „lis” „żyje” „w” „Woods”.
Więc teraz jesteśmy jasni na temat pojęcia podziału, a także jesteśmy teraz jasni na definicji String and Delimiter. Kontynuujmy badanie wdrażania podziału w C.
Standardowa funkcja C dla podziału w oparciu o ogranicznik:
C zapewnia strtok () funkcja, która może być użyta do podziału łańcucha na tokeny na podstawie wybranego ogranicznika.
Prototyp funkcji:
char *strtok (char *ogranicz str, const char *ogranicz DeliM);Nagłówek do uwzględnienia:
#włączaćProgram c do podziału ciągu na podstawie delimiter za pomocą strtok ():
#włączaćC Migawka programu:
Wyjście programu:
Omówmy teraz naszą własną implementację do podzielonego ciągu na podstawie delimiter bez użycia standardowej funkcji C (strtok ()).
Musimy przeszukać obecność ogranicznika w ciągu i możemy zwrócić adres pierwszego znaku tokenu ciągów tuż przed ograniczeniem.
C Funkcja wyszukiwania tokena na podstawie ograniczenia można zaimplementować, jak poniżej:
char *Search_Token (Char *String, Char *DeLim)Powyżej znajduje się funkcja wyszukiwania w celu wyszukiwania tokena, kiedy token zostanie znaleziony znak, zanim token można skopiować i pobierać z bufora strun źródłowego.
Kompletny program C z naszą implementacją będzie wyglądał poniżej:
#włączaćWyjście z powyższego programu z tym samym zestawem wejściowym co standardowa funkcja C Strtok:
Bash-4.2 $ ./A.na zewnątrzMigawki pełnego programu:
Migawka wyjściowa:
Wniosek:
Do tej pory omówiliśmy o podzieleniu łańcucha na podstawie ogranicznika. Istnieją już dostępne biblioteki. Funkcją biblioteki, której można użyć do podziału ciągów na podstawie ograniczenia, jest strtok. Wzięliśmy przykładowy przypadek użycia, aby zrozumieć funkcję biblioteki strtok. Napisaliśmy także przykładowy program, aby zrozumieć użycie funkcji biblioteki.
Druga część, zaimplementowaliśmy własną metodę podziału łańcucha na podstawie delimiter. Napisaliśmy funkcję, która jest jak c funkcja strtok. Wyjaśnienie funkcjonowania funkcji niestandardowej podano i wykazano za pomocą tej samej głównej funkcji, którą podjęto w przypadku funkcji biblioteki C. Przykładowy wynik programu jest również dostarczany z przykładowym programem.
Przeszliśmy także koncepcję podziału ciągów w oparciu o ograniczenie, po prostu podsumowanie dowolnego znaku, który jest wyszukiwaniem w głównym ciągu, można uznać za token i można go przeszukać, dopóki token nie zostanie napotkany. Po znalezieniu tokena string przed powrót tokena do funkcji dzwoniącego.