<分区>
我有一个接受用户输入的提示。我想接受这个用户输入并将每个单词存储在一个 vector 中,用空格分隔,除非引号之间包含一组单词,在这种情况下,我希望这些部分中的所有术语都算作 1。
例如,如果用户输入以下内容:
12345 Hello World "This is a group"
然后我希望 vector 存储以下内容:
vector[0] = 12345
vector[1] = Hello
vector[3] = World
vector[4] = "This is a group"
我有以下代码,它将用户输入按空格拆分并将其存储在一个 vector 中,但我无法弄清楚如何使引号内的所有文本都算作一个。
string userInput
cout << "Enter a string: ";
getline(cin, userInput);
string buf;
stringstream ss(userInput);
vector<string> input;
while (ss >> buf){
input.push_back(buf);
我想在用户输入段落的单词周围保留引号。我还想将结果保存到 vector 而不是将字符输出到屏幕。