假如某字符串是“5,3,2,@,@,4,@,@,7,6,@,@,8,@,@,”,按照‘,’把该字符串分割成几个子字符串。分割以后"5","3","2","@","@","4","@"等。
vector<string> split(string &str, char ch)
{
//存储分割以后的结果
vector<string> res;
//加入一个分割字符,方便操作
str += ch;
//分割的起始位置
int start = 0;
//分割的终止位置
int last = str.find(ch);
//找到最后一个分隔符,终止条件
while (last < str.size())
{
//如果字符串不为空,则添加到结果中
if (start != last)
res.push_back(str.substr(start, last - start));
//起始位置更新
start = last + 1;
//终止位置更新
last = str.find(ch, start);
}
return res;
}