在逗号c ++之后将字符串分成数组

时间:2016-04-23 22:18:43

标签: c++11

我有以下字符串: -

  

CoursesExams =   HUM001,技术文档,28/4/2016年,海拉; CSE121,计算机程序设计,3/5/2016年,HallB]

我想在每个;之后将它拆分成一个数组。我怎么能用c ++做到这一点?

1 个答案:

答案 0 :(得分:1)

使用std :: getline和stringstream:

std::string s = "HUM001,Technical Writing,28/4/2016,HallA;CSE121,Computer Programming,3/5/2016,HallB]";
std::vector<std::string> arr;
std::istringstream str(s);
std::string elem;

// getline reads str stream until comma is found, then returns string in elem
while(std::getline(str, elem, ',')) arr.push_back(elem);

for (auto& s : arr) std::cout << s << "\n";