Avatar ·

Comment vérifier si une chaîne contient une sous-chaîne en C++?

Bonjour à tous ! Je viens de commencer à apprendre le C++ et j'ai rencontré un problème : comment vérifier si une chaîne en contient une autre ? Dans d'autres langages, comme Python, cela se fait simplement avec l'opérateur `in` ou la méthode `.find()`. Mais en C++, je suis un peu perdu. J'ai une variable `std::string text = "Hello, world!";` et je dois vérifier si elle contient la sous-chaîne `"world"`. J'ai essayé d'écrire ce code : ```cpp #include #include int main() { std::string text = "Hello, world!"; std::string substr = "world"; if (text.find(substr)) { std::cout << "Trouvé !" << std::endl; } else { std::cout << "Pas trouvé" << std::endl; } return 0; } ``` Mais ce code ne fonctionne pas correctement : quand la sous-chaîne est présente, il affiche parfois "Pas trouvé", et quand elle est absente, il peut afficher "Trouvé". J'ai lu que `find()` retourne un certain index, mais je n'ai pas compris comment l'utiliser correctement. S'il vous plaît, expliquez-moi comment vérifier correctement.