int strnstr( const char * cadena, const char * subcadena )
Retorna:
-1 // Si no se encontró la subcadena dentro de la cadena.
+n // Si se encontró en la posición n de la cadena de texto.
Descripción:
Busca la secuencia de carácteres contenida en la
subcadena en una cadena de texto.
Esta función determinará si la cadena contiene a la subcadena (como "CASA"
contiene "ASA") y, en caso afirmativo, indicará en que posición aparece la
subcadena dentro de la cadena (de 0 en adelante, 1 en el ejemplo anterior). En
caso de aparecer la subcadena varias veces, la función siempre retornará la
posición primera.
char micadena[50]="Esta es una cadena de ejemplo."; int posicion; MAIN_PROGRAM_CDIV BEGIN_PROGRAM // Definimos el modo gráfico set_gfx(GFX_AUTODETECT_WINDOWED); // Definimos la resolución set_mode(m640x480); posicion = strnstr(micadena,"es"); write_int(0,0,10,0,OFFSET posicion); LOOP FRAME; END_PROGRAM
En este ejemplo se utiliza la función strnstr() para que determine
dónde se encuentra la subcadena "es" dentro de micadena. Retornará
la posición 5, debido a que la función distingue entre mayúsculas y
minúsculas, por lo que no se reconoce la subcadena "Es" (de "Esta") que se
encuentra en la posición 0 de la cadena.
Para realizar conversiones entre mayúsculas y minúsculas, se pueden utilizar las
funciones upper() y
lower().
Para determinar si una cadena contiene algún carácter en concreto, se debe
utilizar la función strnchr() que, además,
permite buscar de una sola vez cualquier carácter dentro de un conjunto
especificado.
Ver: upper() - lower() - strdel() - strcpy() - strcat() - strlen() - strcmp() - strnchr() - strset() - chartoint()