So verwenden Sie Find_first_of -Funktion in C ++

So verwenden Sie Find_first_of -Funktion in C ++
In C ++ gibt es unterschiedliche integrierte Funktionen, um mit den String-Daten zu arbeiten. Der find_first_of () Funktion wird verwendet, um den Ort des ersten Auftretens des angegebenen Zeichens zu ermitteln. Diese Funktion gibt die Position des ersten Auftretens der Zeichenfolge zurück, die als Argumentwert dieser Funktion angegeben wird. In diesem Tutorial wurden verschiedene Verwendungen dieser Funktion zur Suche der Zeichenfolge in C ++ erläutert.

Voraussetzung

Bevor Sie die Beispiele dieses Tutorials überprüfen, müssen Sie überprüfen, ob der G ++ - Compiler installiert ist oder nicht im System. Wenn Sie Visual Studio -Code verwenden, installieren Sie die erforderlichen Erweiterungen, um den C ++ - Quellcode zu kompilieren, um den ausführbaren Code zu erstellen. Hier wurde die Visual Studio -Codeanwendung zum Kompilieren und Ausführen des C ++ - Code verwendet.

Merkmale der Funktion find_first_of ()

Der find_first_of () Funktion kann verschiedene Arten von Variablen basierend auf dem Wert des ersten Arguments zurückgeben. Es gibt die Suchposition der Zeichenfolge zurück, wenn der erste Argumentwert eine Zeichenfolge ist. Es wird die Suchposition der Zeichenzeichenfolge zurückgegeben, wenn der Zeiger auf ein Zeichen von Zeichen im ersten Argument angegeben ist. Es gibt die Pufferposition zurück, wenn der Wert des dritten Arguments angegeben wird. Es wird die Charakterposition zurückgeben, wenn im ersten Argument ein Zeichen angegeben ist und es in der Hauptschnur existiert. Die Startposition der Suche wird im zweiten Argument dieser Funktion festgelegt. Die unterschiedliche Syntax dieser Funktion ist unten angegeben.

Syntax

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;
Puffer size_t find_first_of (const char* s, size_t pos, size_t n) const;
Zeichen size_t find_first_of (char c, size_t pos = 0) const;

Beispiel 1: Suchen und ersetzen Sie das bestimmte Zeichen einer Zeichenfolge

Das folgende Beispiel zeigt den Weg zur Durchsuchung der Position des jeweiligen Zeichens in einer Zeichenfolge. Erstellen Sie eine C ++ - Datei mit dem folgenden Code, um das bestimmte Zeichen durch ein anderes Zeichen zu ersetzen. Im Code die find_first_of () Die Funktion wurde verwendet, um alle Positionen eines bestimmten Zeichens in einer Zeichenfolge zu durchsuchen und die Zeichen durch die Schleife durch ein anderes Zeichen zu ersetzen. Die ursprüngliche Zeichenfolge und die ersetzte Zeichenfolge werden nach der Ausführung des Codes gedruckt.

// zum Drucken des Ausgangs einschließen
#enthalten
// für die Verwendung von size_t einfügen
#enthalten
int main ()

// eine String -Variable initialisieren
std :: string strdata ("Willkommen bei LinuxHint");
// Drucken Sie die Originalzeichenfolge
std :: Cout << "The original string is: " + strData << '\n';
// Finde alle Position des Charakters 'I' heraus
std :: size_t searchlist = strdata.find_first_of ("i");
// die Schleife wiederholen, um alle 'I' durch '@' zu ersetzen
while (SearchList!= std :: string :: npos)

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

// Drucken Sie die modifizierte Zeichenfolge
std :: Cout << "The modified string is: " + strData << '\n';
Rückkehr 0;

Ausgang:

Die folgende Ausgabe wird nach der Ausführung des obigen Codes angezeigt.

Beispiel 2: Suchen Sie die erste Position der Suchzeichen

Erstellen Sie eine C ++ - Datei mit dem folgenden Code, um die Position einer Zeichenfolge mehrerer Zeichen zu durchsuchen und die erste Position des Zeichens zurückzugeben, die mit der Hauptzeichenfolge übereinstimmt. In einer String -Variablen wurde eine String -Daten zugewiesen, und die erste Position wird in einer Ganzzahlvariablen gespeichert. Der Positionswert wird nach der Ausführung des Codes gedruckt.

// zum Drucken des Ausgangs einschließen
#enthalten
int main ()

// Initialisieren Sie die String -Variable
STD :: String strdata ("Basic C ++ Programmierung");
// Die Interger -Variable deklarieren, um die Position zu speichern
int Position;
// Durchsuchen Sie das Zeichen 'C ++'
Position = strdata.find_first_of ("k ++");
// Überprüfen Sie den Positionswert
if (Position> = 0)

// Drucken Sie die Position, wenn der beliebige Zeichen gefunden wurde
std :: Cout << "The character '" << strData[position]
<< "' has found" << " at the position " << position << '\n';

Rückkehr 0;

Ausgang:

Die folgende Ausgabe wird nach der Ausführung des obigen Codes angezeigt. Hier, der Charakter, '+"der String", "K++hat an der Position gefunden, 7 der Hauptschnur, 'Grundlegende C ++ - Programmierung''.

Beispiel 3: Suchen Sie nach der bestimmten Position ein bestimmtes Zeichen

Erstellen Sie eine C ++ - Datei mit dem folgenden Code, um ein bestimmtes Zeichen nach der bestimmten Position zu durchsuchen. In der Zeichenfolgenvariable wird eine Zeichenfolgedaten gespeichert und nach der Position ein bestimmter Zeichenfolge durchsucht, 13. Wenn in der Hauptzeichenfolge ein Zeichen der Suchzeichenfolge gefunden wurde, wird ein Positionswert zurückgegeben.

// zum Drucken des Ausgangs einschließen
#enthalten
int main ()

// eine String -Variable initialisieren
std :: string strdata = "essen, um zu leben, nicht leben zu essen";
// Drucken Sie die Originalzeichenfolge
std :: Cout << "The original string is: " + strData << '\n';
// Drucken Sie die Position, an der der letzte Zeichen gefunden wurde
std :: Cout<<"The last matching character found at the position :"
<< strData.find_first_of("at",13) << '\n';
Rückkehr 0;

Ausgang:

Die folgende Ausgabe wird nach der Ausführung des obigen Codes angezeigt. Hier, der Charakter, 'A"der String", "beihat an der Position gefunden, 15 der Hauptschnur, 'Essen, um zu leben - nicht leben, um zu essen''.

Beispiel 4: Durchsuchen Sie die Position der ersten Übereinstimmung Nummer

Erstellen Sie eine C ++ - Datei mit dem folgenden Code, um jede Nummer der ersten Vektorliste in der zweiten Vektorliste zu durchsuchen und die Position der übereinstimmenden Anzahl der ersten Vektorliste zurückzusetzen. Wenn ein passendes Argument gefunden wird, wird der Positionswert zurückgegeben; Andernfalls wird eine Nachricht gedruckt.

// zum Drucken des Ausgangs einschließen
#enthalten
// Fügen Sie zum Durchsuchen von Daten im Vektor ein
#enthalten
// zur Verwendung von Vektordaten einschließen
#enthalten
int main ()

// zwei Vektorliste deklarieren
STD :: Vektor List1 10, 5, 65, 31, 7;
STD :: Vektor List2 2, 77, 5, 38, 32, 55;
// Durchsuchen Sie die Daten von List1 in die Liste2
auto output = std :: find_first_of (list1.Start(),
Liste1.end (), list2.begin (), list2.Ende());
// Lesen Sie die Position der Matching -Nummer
int Position = std :: distanz (list1.begin (), Ausgabe);
// Überprüfen Sie eine beliebige Anzahl von List1 -Übereinstimmung mit einer beliebigen Anzahl von List2
if (Ausgabe < list1.end())
std :: Cout << "The first matching number " <<
LIST1 [Position] << " found at position " <<
Position << "\n";

anders
std :: Cout << "No matching number found.\n";

Ausgang:

Die folgende Ausgabe wird nach der Ausführung des obigen Codes angezeigt. Der Zahlenwert 5 des ersten Arrays existiert im zweiten Array und die Position dieser Zahl beträgt 1.

Abschluss

Die Funktion für find_first_of () kann verwendet werden, um ein Zeichen oder eine Nummer für verschiedene Programmierzwecke zu durchsuchen. Diese Funktion kann zur Lösung der verschiedenen Suchprobleme verwendet werden. Ich hoffe, der C ++ - Programmierer kann diese Funktion nach dem Lesen dieses Tutorials richtig verwenden können.