Come utilizzare Find_First_OF Function in C ++

Come utilizzare Find_First_OF Function in C ++
Diverse funzioni integrate esistono in C ++ per funzionare con i dati della stringa. IL find_first_of () La funzione viene utilizzata per trovare la posizione della prima occorrenza del carattere specificato. Questa funzione restituisce la posizione della prima occorrenza della stringa che verrà fornita come valore dell'argomento di questa funzione. In questo tutorial sono stati spiegati diversi usi di questa funzione per la ricerca della stringa in C ++.

Prerequisito

Prima di controllare gli esempi di questo tutorial, è necessario controllare il compilatore G ++ è installato o meno nel sistema. Se si utilizza il codice Visual Studio, installa le estensioni necessarie per compilare il codice sorgente C ++ per creare il codice eseguibile. Qui, l'applicazione del codice Visual Studio è stata utilizzata per compilare ed eseguire il codice C ++.

Funzioni di Find_first_of ()

IL find_first_of () La funzione può restituire diversi tipi di variabili in base al valore del primo argomento. Restituirà la posizione di ricerca della stringa se il primo valore dell'argomento è una stringa. Restituirà la posizione di ricerca della stringa del personaggio se il puntatore a una matrice di caratteri viene fornito nel primo argomento. Restituirà la posizione del buffer se viene fornito il valore del terzo argomento. Restituirà la posizione del personaggio se un personaggio viene fornito nel primo argomento ed esiste nella stringa principale. La posizione iniziale della ricerca è impostata nel secondo argomento di questa funzione. Di seguito è riportata la diversa sintassi di questa funzione.

Sintassi

String size_t find_first_of (const string & str, size_t pos = 0) const;
c-string size_t find_first_of (const char* s, size_t pos = 0) const;
buffer size_t find_first_of (const char* s, size_t pos, size_t n) const;
carattere size_t find_first_of (char c, size_t pos = 0) const;

Esempio 1: cercare e sostituire il carattere particolare di una stringa

L'esempio seguente mostra il modo per cercare la posizione del carattere particolare in una stringa. Crea un file C ++ con il seguente codice per sostituire il carattere particolare con un altro carattere. Nel codice, il find_first_of () La funzione è stata utilizzata per cercare tutte le posizioni di un carattere particolare in una stringa e sostituire i caratteri con un altro carattere usando il loop. La stringa originale e la stringa sostituita verranno stampate dopo aver eseguito il codice.

// Includi per la stampa dell'output
#includere
// include per l'uso di size_t
#includere
int main ()

// Inizializza una variabile stringa
Std :: String strdata ("Benvenuti a LinuxHint");
// Stampa la stringa originale
std :: cout << "The original string is: " + strData << '\n';
// Scopri tutta la posizione del personaggio 'io'
std :: size_t searchlist = strdata.find_first_of ("i");
// itera il ciclo per sostituire tutto 'i' di '@'
mentre (searchlist!= std :: string :: npos)

strdata [searchlist] = '@';
SearchList = strdata.find_first_of ("i", searchlist+1);

// Stampa la stringa modificata
std :: cout << "The modified string is: " + strData << '\n';
restituzione 0;

Produzione:

Verrà visualizzato il seguente output dopo aver eseguito il codice sopra.

Esempio 2: cerca la prima posizione dei caratteri di ricerca

Crea un file C ++ con il seguente codice per cercare la posizione di una stringa di più caratteri e restituire la prima posizione del carattere che corrisponde alla stringa principale. Un dati di stringa è stato assegnato in una variabile stringa e la prima posizione è memorizzata in una variabile intera. Il valore di posizione verrà stampato dopo aver eseguito il codice.

// Includi per la stampa dell'output
#includere
int main ()

// Inizializza la variabile stringa
std :: string strdata ("programmazione di base c ++");
// dichiara la variabile interger per memorizzare la posizione
posizione int;
// Cerca il carattere 'C ++'
posizione = strdata.find_first_of ("k ++");
// Controlla il valore di posizione
if (posizione> = 0)

// stampa la posizione se il carattere trovato
std :: cout << "The character '" << strData[position]
<< "' has found" << " at the position " << position << '\n';

restituzione 0;

Produzione:

Verrà visualizzato il seguente output dopo aver eseguito il codice sopra. Qui, il personaggio "+'della stringa,'K++'ha trovato nella posizione, 7 della stringa principale, "Programmazione di base C ++'.

Esempio 3: cerca un carattere particolare dopo la posizione particolare

Crea un file C ++ con il seguente codice per cercare un particolare carattere dopo la particolare posizione. Un dati di stringa viene archiviato nella variabile stringa e una particolare stringa viene cercata dopo la posizione, 13. Se è stato trovato un carattere della stringa di ricerca nella stringa principale, verrà restituito un valore di posizione.

// Includi per la stampa dell'output
#includere
int main ()

// Inizializza una variabile stringa
std :: string strdata = "mangia per vivere, non vivere per mangiare";
// Stampa la stringa originale
std :: cout << "The original string is: " + strData << '\n';
// stampa la posizione in cui è stato trovato l'ultimo personaggio
std :: cout<<"The last matching character found at the position :"
<< strData.find_first_of("at",13) << '\n';
restituzione 0;

Produzione:

Verrà visualizzato il seguente output dopo aver eseguito il codice sopra. Qui, il personaggio "UN'della stringa,'A'ha trovato nella posizione, 15 della stringa principale, "Mangia per vivere, non vivere per mangiare'.

Esempio 4: cerca la posizione del primo numero di corrispondenza

Crea un file C ++ con il seguente codice per cercare ogni numero del primo elenco vettoriale nel secondo elenco vettoriale e restituire la posizione del numero di corrispondenza del primo elenco vettoriale. Se viene trovato un argomento corrispondente, verrà restituito il valore della posizione; Altrimenti, verrà stampato un messaggio.

// Includi per la stampa dell'output
#includere
// Includi per la ricerca dei dati nel vettore
#includere
// Includi per l'utilizzo dei dati vettoriali
#includere
int main ()

// dichiara due elenco vettoriali
Std :: Vector List1 10, 5, 65, 31, 7;
Std :: Vector List2 2, 77, 5, 38, 32, 55;
// Cerca i dati di List1 nell'elenco2
output automatico = std :: find_first_of (list1.inizio(),
List1.end (), list2.inizio (), list2.FINE());
// Leggi la posizione del numero corrispondente
INT POSIZIONE = STD :: Distanza (List1.inizio (), output);
// Controlla un numero qualsiasi di Elenco1 corrispondenza con qualsiasi numero di elenco2
if (output < list1.end())
std :: cout << "The first matching number " <<
List1 [posizione] << " found at position " <<
posizione << "\n";

altro
std :: cout << "No matching number found.\n";

Produzione:

Verrà visualizzato il seguente output dopo aver eseguito il codice sopra. Il valore del numero, 5 del primo array, esiste nel secondo array e la posizione di questo numero è 1.

Conclusione

La funzione find_first_of () può essere utilizzata per cercare un carattere o un numero per vari scopi di programmazione. Questa funzione può essere utilizzata per risolvere i vari problemi di ricerca. Spero che il programmatore C ++ possa essere in grado di utilizzare questa funzione correttamente dopo aver letto questo tutorial.