C++提取字符串中的单词
vector<string>word;
string t;
for(auto c:s){
if(c== ){
word.push_back(t);
t.clear();
}else
t+=c;
}
//分割字符串
istringstream str(s);
vector<string> words;
string word;
while(str >> word){
words.push_back(word);
}
istringstream是一个比较有用的c++的输入输出控制类。
C++引入了ostringstream、istringstream、stringstream这三个类,要使用他们创建对象就必须包含这个头文件。 istringstream类用于执行C++风格的串流的输入操作。 ostringstream类用于执行C风格的串流的输出操作。 strstream类同时可以支持C风格的串流的输入输出操作。
istringstream的构造函数原形如下: istringstream::istringstream(string str);
它的作用是从string对象str中读取字符。
#include<iostream>
#include<sstream> //istringstream 必须包含这个头文件
#include<string>
using namespace std;
int main()
{
string str="i an a boy";
istringstream is(str);
string s;
while(is>>s)
{
cout<<s<<endl;
}
}
输出是:
i am a boy
