Cadena: La cadena es una variedad de caracteres. Un par de ejemplos de cuerdas son:
"Nueva Delhi es capital de la India"Delimitador: Cualquier carácter o conjunto de caracteres puede considerarse como delimitador. Si se va a dividir una cadena en función de Delimiter, entonces Delimiter debe ser parte de la cadena o de lo contrario la cadena completa será la cadena de salida.
Los ejemplos delimitadores de uso común son: "" (espacio), (coma), '\ n' (nueva línea) y muchos más.
Dividir la cadena basada en delimitador:
Consideremos una cuerda de ejemplo como "Fox vive en bosque" y delimitador como "" (espacio), luego la cuerda se dividirá en múltiples cuerdas. Múltiples cuerdas después de la división serán "Fox" "Vives" "en" "bosques".
Entonces, ahora, tenemos claro el concepto de división y también, ahora estamos claros en la definición de cadena y delimitador. Procedamos explorando la implementación de la división en c.
Función C estándar para división basada en delimitador:
C proporciona el Strtok () función, que se puede usar para dividir la cadena en tokens en función del delimitador seleccionado.
Prototipo de función:
char *strtok (char *restringir stri, const char *restringir delicarse);Encabezado que se incluirá:
#incluirC programa para dividir la cadena basada en delimitador usando strtok ():
#incluirInstantánea del programa C:
Salida del programa:
Ahora, discutamos nuestra propia implementación para dividir String en función de delimitador sin usar la función C estándar (strtok ()).
Debemos buscar la presencia del delimitador en la cadena y podemos devolver la dirección del primer carácter del token de cadena justo antes del delimitador.
C La función para buscar el token basado en delimitador se puede implementar como se muestra a continuación:
char *search_token (char *string, char *delim)Arriba está la función de búsqueda para buscar el token, una vez que se encuentra el token, el carácter antes de que el token pueda copiarse y obtener desde el búfer de cadena de origen.
El programa C completo con nuestra implementación se verá a continuación:
#incluirSalida del programa anterior con la misma entrada establecida a partir de la función C Strtok estándar:
bash-4.2 $ ./a.afueraInstantáneas del programa completo:
Instantánea de salida:
Conclusión:
Hasta ahora, discutimos sobre la división de la cadena basada en delimitador. Ya hay formas de biblioteca disponibles para hacerlo. La función de biblioteca que se puede usar para dividir la cadena basada en delimitador es Strtok. Tomamos un caso de uso de ejemplo para comprender la función de la biblioteca Strtok. Además, escribimos un programa de ejemplo para comprender el uso de la función de la biblioteca.
Segunda parte, implementamos nuestro propio método para dividir la cadena basada en delimitador. Escribimos una función que es como la función c strtok. La explicación del funcionamiento de la función personalizada se proporcionó y demostró con la ayuda de la misma función principal que se tomó en el caso de la función de la biblioteca C. La salida de ejemplo del programa también se proporciona con el programa de ejemplo.
También hemos pasado por el concepto de división de cadena basado en delimitador, solo para resumir cualquier carácter que se busque en la cadena principal puede considerarse como un token y se puede buscar hasta que se encuentre el token. Una vez que se encuentra el token, la cadena antes de que el token vuelva a la función de la persona que llama.