basic_string::find_first_of (STL Samples)
Ilustra como usar o basic_string::find_first_of função de biblioteca STL (Standard Template) no Visual C++.
size_type find_first_of(
const basic_string& _X,
size_type iPos = 0
);
size_type find_first_of(
const element_type *_S,
size_type iPos,
size_type cElementsIn_S
);
size_type find_first_of(
const element_type *_S,
size_type iPos = 0
);
size_type find_first_of(
element_type _C,
size_type iPos = 0
);
Comentários
Observação |
---|
Nomes de classe/parâmetro o protótipo não coincidem com a versão no arquivo de cabeçalho.Alguns foram modificados para melhorar a legibilidade. |
As funções de membro cada localizar o primeiro (posição mais baixa) elemento da seqüência controlado em ou depois da posição iPos que corresponde a qualquer um dos elementos na seqüência operando especificadas pelos operandos de restantes.Se tiver êxito, ele retorna a posição.Caso contrário, a função retornará npos.A posição que retornou é baseada em 0 (zero).O npos retornar o valor é um valor especial indicando que nenhum dos elementos foi encontrado.
Exemplo
// main.cpp
// compile with: /EHsc
//
// Functions:
//
// string::find_first_of() - find the first instance in the
// controlled string of any of the elements specified by the
// parameters. The search begins at an optionally-supplied
// position in the controlled string.
#include <string>
#include <iostream>
using namespace std ;
int main()
{
string str1("Heartbeat");
string str2("abcde");
size_t iPos = 0;
cout << "The string to search is '" << str1.c_str() << "'"
<< endl;
// find the first instance in str1 of any characters in str2
iPos = str1.find_first_of (str2, 0); // 0 is default position
cout << "Element in '" << str2.c_str() << "' found at position "
<< iPos << endl;
// start looking in the third position...
iPos = str1.find_first_of (str2, 2);
cout << "Element in '" << str2.c_str() << "' found at position "
<< iPos << endl;
// use an array of the element type as the set of elements to
// search for; look for anything after the fourth position
char achVowels[] = {'a', 'e', 'i', 'o', 'u'};
iPos = str1.find_first_of (achVowels, 4, sizeof(achVowels));
cout << "Element in '";
for (int i = 0; i < sizeof (achVowels); i++)
cout << achVowels[i];
cout << "' found at position " << iPos << endl;
// use a string literal to specify the set of elements
char szVowels[] = "aeiou";
iPos = str1.find_first_of (szVowels, 0); // 0 is default position
cout << "Element in '" << szVowels << "' found at position "
<< iPos << endl;
// look for a specific character beginning in the third position
iPos = str1.find_first_of ('e', 2);
cout << "'e' found at position " << iPos << endl;
}
Saída
The string to search is 'Heartbeat'
Element in 'abcde' found at position 1
Element in 'abcde' found at position 2
Element in 'aeiou' found at position 6
Element in 'aeiou' found at position 1
'e' found at position 6
Requisitos
Cabeçalho: <string>