c++的split方法
vb,c#等语言都有字符串分割的split函数,用起来非常方便。c++的string类没有此类的函数,只好自己写一个。当然,也可以用c的系统函数strtok实现。关于strtok函数的使用见strstok详解。
#include <iostream>
#include <string>
#include <vector>
#include <sstream>
#include <algorithm>
#include <iterator>
using namespace std;
void split(string in,vector<string> &vec) //以" "为分隔符
{
istringstream ss(in);
string t;
while(ss>>t)
{
vec.push_back(t);
}
}
int main()
{
string str="a b c d e f";
vector <string> v;
split(str,v);
ostream_iterator<string> out (cout, "\n");
copy (v.begin(),v.end(),out);
system("pause");
return 0;
}
这里用到了istringstream,将字符串转换成输入流。
作者:网络小筑
个人网站:生活百科
本文版权所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
个人网站:生活百科
本文版权所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。