strstr() en C/C++

En C++, std::strstr() es una función predefinida utilizada para el manejo de strings. string.h es el archivo de encabezado requerido para las funciones de string.

Esta función toma dos strings s1 y s2 como argumento y encuentra la primera aparición de la substring s2 en la string s1 . El proceso de coincidencia no incluye los caracteres nulos finales (‘\0’), pero la función se detiene allí.

Sintaxis:

char *strstr (const char *s1, const char *s2);

Parameters:
s1: This is the main string to be examined.
s2: This is the sub-string to be searched in s1 string.

Valor de retorno: esta función devuelve un puntero que apunta al primer carácter del s2 encontrado en s1 ; de lo contrario, un puntero nulo si s2 no está presente en s1 . Si s2 apunta a una string vacía, se devuelve s1.

Ejemplo:

// CPP program to illustrate strstr()
#include <string.h>
#include <stdio.h>
  
int main()
{
    // Take any two strings
    char s1[] = "GeeksforGeeks";
    char s2[] = "for";
    char* p;
  
    // Find first occurrence of s2 in s1
    p = strstr(s1, s2);
  
    // Prints the result
    if (p) {
        printf("String found\n");
        printf("First occurrence of string '%s' in '%s' is '%s'", s2, s1, p);
    } else
        printf("String not found\n");
  
    return 0;
}

Producción:

String found
First occurrence of string 'for' in 'GeeksforGeeks' is 'forGeeks'

Aplicación: reemplazar una string por otra
En este ejemplo, con la ayuda de la función strstr(), primero buscamos la ocurrencia de una substring STL en s1 y luego reemplazamos esa palabra con Strings .

// CPP program to illustrate strstr()
#include <string.h>
#include <stdio.h>
  
int main()
{
    // Take any two strings
    char s1[] = "Fun with STL";
    char s2[] = "STL";
    char* p;
  
    // Find first occurrence of s2 in s1
    p = strstr(s1, s2);
  
    // Prints the result
    if (p) {
        strcpy(p, "Strings");
        printf("%s", s1);
    } else
        printf("String not found\n");
  
    return 0;
}

Producción:

Fun with Strings

Este artículo es una contribución de Akash Gupta. Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *