std :: find_first_of () con ejemplos en C ++

En este artículo, vamos a ver cómo buscar un carácter en una cadena utilizando la función STL find_first_of ()?

std :: find_first_of () como una función STL

find_first_of () en una función STL útil, que es & nbsp; invocada por una cadena y busca en la primera posición de cualquier personaje de la lista de caracteres proporcionado (cadena str) en el argumento.

Sintaxis:

size_t find_first_of (const string& str, size_t pos = 0) const;

Cuando,

  • class string & str – colección de caracteres cualquiera de los cuales debe ser buscado.
  • size_t pos – un parámetro opcional que se pasa con un valor de 0. class define la posición del índice de inicio de la cadena de invocación desde donde la búsqueda debe comenzar.

class escribir: size_t

Devuelve el índice si encuentra cualquier carácter de la colección mencionado en la cadena de invocación. Si ninguno de los personajes está presente en la cadena de invocación a continuación, devuelve una cadena :: npos.

Devuelve el índice de inmediato si alguno de los personajes encontrados.

Ejemplo 1: argumento Posición no pasado, así que por const es 0

#include <bits/stdc++.h>
using namespace std;
int main()
{
string str = "includehelp";
string re = "aeiou";
//its searching in the string str
//it searches any character from the string re
//now if any character of re is found then it simply
//returns the position of the character found
cout << "the first vowel appearing in the string: " << str << " is " << str[str.find_first_of(re)] << endl;
return 0;
}

salida:

the first vowel appearing in the string: includehelp is i

In the above program, 
In the first case,
The invoking string is str, "includehelp"
The collection of characters which are being searched
"aeiou" -> 'a', 'e', 'i', 'o', 'u'
The position argument is not passed so
it will start searching from position 0 which is 'i',
since 'i' falls in the collection of characters thus it returns 0

Ejemplo 2: argumento Posición se pasa

#include <bits/stdc++.h>
using namespace std;
int main()
{
string str = "includehelp";
string re = "aeiou";
//its searching in the string str
//it searches any character from the string re
//now if any character of re is found then it simply
//returns the position of the character found
//now this will start searching in str from position=1
//thus it skips the fisrt vowel 'i'
cout << "the second vowel appearing in the string: " << str << " is " << str[str.find_first_of(re, 1)] << endl;
return 0;
}

de salida :

the second vowel appearing in the string: includehelp is u

En lo anterior class, la posición de partida es 1 por lo que empieza a buscar sólo de índice 1 omitiendo el primer índice (0), que es ‘i’. Por lo tanto, el primer carácter de la colección que se encuentra es la ‘u’.


Deja un comentario

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