您的位置:首页 > 编程语言 > C语言/C++

文章标题

2016-06-02 16:18 267 查看

C++ split()函数的简单实现

/*
* @param: out result;
* @param: in str;
* @param: in delim;
*/
void split(vector<string> &result, const string &str, const string &delim)
{
string::size_type pos1, pos2;
pos1 = 0;
pos2 = str.find(delim);
while(pos2 != string::npos)
{
result.push_back(str.substr(pos1, pos2-pos1));
//pos1 = pos2+1;
pos1 = str.find_first_not_of(delim, pos2);
pos2 = str.find(delim, pos1);
}
result.push_back(str.substr(pos1));  //最后一个
}

int main()
{
vector<string> result;

string str("Hello World Test  hhh gg     pp");
split(result, str, " ");
for(vector<string>::iterator it=result.begin(); it!=result.end(); ++it)
{
cout << *it << ",";
}

return 0;
}


测试结果

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++