Corda: La stringa è una matrice di caratteri. Un paio di esempi di stringhe sono:
"Nuova Delhi è capitale dell'India"Delimitatore: Qualsiasi personaggio o set di caratteri può essere considerato delimitatore. Se una stringa deve essere divisa in base al delimitatore, il delimitatore dovrebbe far parte della stringa oppure la stringa completa sarà la stringa di output.
Esempi delimitanti comunemente usati sono: ““ (spazio) ,, (virgola), '\ n' (nuova riga) e molti altri.
Dividere la stringa in base al delimitatore:
Consideriamo una stringa di esempio come "Fox vive in Woods" e delimitatore come "" (spazio), quindi la stringa si divide in più stringhe. Stringhe multiple dopo la divisione saranno "volpi" "vite" "in" "boschi".
Quindi ora siamo chiari sul concetto di scissione e anche, ora siamo chiari sulla stringa e sulla definizione delimitante. Procediamo con l'esplorazione dell'implementazione della divisione in C.
Funzione C standard per diviso in base al delimitatore:
C fornisce il strtok () funzione, che può essere utilizzata per dividere la stringa in token in base al delimitatore selezionato.
Prototipo di funzione:
char *strtok (char *limitare str, const char *limitare Delim);Intestazione da includere:
#includereProgramma C per dividere la stringa in base al delimitatore usando strtok ():
#includereC -istantanea del programma:
Output del programma:
Ora, discutiamo della nostra implementazione per dividere la stringa in base al delimitatore senza utilizzare la funzione C standard (STRTOK ()).
Dobbiamo cercare la presenza delimitatore nella stringa e possiamo restituire l'indirizzo del primo carattere del token di stringa appena prima del delimitatore.
La funzione C per cercare il token in base al delimitatore può essere implementata come di seguito:
char *search_token (char *string, char *delim)Sopra è la funzione di ricerca per cercare il token, una volta che il token si trova il carattere prima che il token possa essere copiato e recuperato dal buffer della stringa di origine.
Il programma C completo con la nostra implementazione apparirà di seguito:
#includereOutput dal programma sopra con lo stesso set di input della funzione standard c strtok:
Bash-4.2 $ ./UN.fuoriSnapshot del programma completo:
Snapshot di output:
Conclusione:
Finora abbiamo discusso della divisione della stringa in base al delimitatore. Esistono già modi di biblioteca disponibili per farlo. La funzione della libreria che può essere utilizzata per dividere la stringa in base al delimitatore è STRTOK. Abbiamo preso un caso d'uso di esempio per comprendere la funzione della libreria strtok. Inoltre, abbiamo scritto un programma di esempio per comprendere l'uso della funzione della libreria.
Seconda parte, abbiamo implementato il nostro metodo per dividere la stringa in base al delimitatore. Abbiamo scritto una funzione che è come la funzione c strtok. La spiegazione del funzionamento della funzione personalizzata è stata fornita e dimostrata con l'aiuto della stessa funzione principale che è stata presa in caso di funzione della libreria C. L'output di esempio del programma è anche fornito con il programma di esempio.
Abbiamo anche superato il concetto di split di stringhe in base al delimitatore, solo per riassumere qualsiasi personaggio che sia la ricerca nella stringa principale può essere considerato come un token e può essere perquisito fino a quando non si incontra il token. Una volta trovato il token, stringa prima che il token venga restituito alla funzione del chiamante.