Как проверить ключевые слова в строке C++

Я пытаюсь понять, как проверить некоторые ключевые слова в строке. В этом случае. Я получаю строку из файла и сохраняю ее во временную строку. У меня есть массив строк с типом ключевых слов, которые я ищу. Например, два ключевых слова - начало и конец, кроме множества операторов if для проверки каждого символа, есть ли другой способ сделать это? Мои проблемы заключаются в том, что если и что я получу по каждому ключевому слову, которое у меня есть, так что я хочу более эффективный способ сделать это с ++

1 ответ

#include <iostream>
#include <string>
#include <algorithm>
#include <vector>
using namespace std;

int main()
{
    std::string input{"apple double banana int float chimpanzee"};
    std::vector<std::string> keywords{"double", "int", "float", "switch"};

    for(const auto& keyword : keywords)
    {
        auto pos = input.find(keyword);

        std::cout << keyword
            << " [" << (pos == std::string::npos ? " not found" : " found") << "]\n";   
    }
    return 0;
}
Другие вопросы по тегам