Wie überprüft man, ob ein String einen Teilstring in C++ enthält?
Hallo zusammen! Ich habe gerade angefangen, C++ zu lernen, und bin auf ein Problem gestoßen: Wie überprüft man, ob ein String einen anderen String enthält? In anderen Sprachen, wie Python, macht man das einfach mit dem Operator `in` oder der Methode `.find()`. In C++ bin ich etwas verwirrt.
Ich habe eine Variable `std::string text = "Hello, world!";` und muss überprüfen, ob der Teilstring `"world"` darin enthalten ist. Ich habe versucht, diesen Code zu schreiben:
```cpp
#include
#include
int main() {
std::string text = "Hello, world!";
std::string substr = "world";
if (text.find(substr)) {
std::cout << "Gefunden!" << std::endl;
} else {
std::cout << "Nicht gefunden" << std::endl;
}
return 0;
}
```
Aber dieser Code funktioniert nicht richtig: Wenn der Teilstring vorhanden ist, gibt er manchmal "Nicht gefunden" aus, und wenn der Teilstring nicht vorhanden ist, kann er "Gefunden" ausgeben. Ich habe gelesen, dass `find()` einen Index zurückgibt, aber ich habe nicht verstanden, wie man ihn richtig verwendet.
Bitte erklärt mir, wie man das richtig überprüft.
Noch keine Antworten.
Anmelden um eine Antwort zu hinterlassen
Blogs
Die 10 besten Kotlin-Frameworks für die Webentwicklung im Jahr 2024