Windows 在字符串中搜索特定单词

Windows 在字符串中搜索特定单词,windows,codeblocks,Windows,Codeblocks,我想为游戏机游戏创建一个非常基本的AI。我需要一个函数,它可以识别通过cin创建的字符串中的2或3个单词。任何帮助都将不胜感激,因为我已经做了一段时间了,似乎找不到解决方案。#include #include <string> #include <iostream> using namespace std; //-------------------------------------------globals string sentence; int m

我想为游戏机游戏创建一个非常基本的AI。我需要一个函数,它可以识别通过cin创建的字符串中的2或3个单词。任何帮助都将不胜感激,因为我已经做了一段时间了,似乎找不到解决方案。

#include
#include <string>
#include <iostream>

using namespace std;

 //-------------------------------------------globals
string sentence;





int main()
{
getline(cin, sentence);

string search;
size_t pos;

search = "hi";
pos = sentence.find(search);
if (pos != string::npos)
    cout << "hello sir " << endl;
else
search = "cya";
    pos = sentence.find("cya");
if (pos != std::string::npos)
    std::cout << "goodbye sir " << endl;
else
search = "goodbye";
    pos = sentence.find("goodbye");
if (pos != std::string::npos)
    std::cout << "shuting down sir " << endl;
else



return 0;
}
#包括 使用名称空间std; //-------------------------------------------全球的 串句; int main() { getline(cin,句子); 字符串搜索; 尺寸和位置; search=“hi”; pos=句子。查找(搜索); if(pos!=字符串::npos)
如果没有,最简单的方法是使用
string::find()在输入字符串中搜索多个目标字符串中的每一个
。你可以在这里找到相关信息:。一个更优雅的解决方案是使用正则表达式搜索每个可能的单词-请看,我现在明白了,你以前问过。提供的答案有什么问题吗?我以前问过这个问题,所以我想你已经看到了我到目前为止的代码,问题是我似乎只能使用该函数一次,我尝试了很多方法,但我一直有错误或不太正常。我有这个方法,但我似乎无法一次搜索多个单词。请将你的代码添加到问题中,而不是作为答案。