C++実装split関数(ネット上から)
497 ワード
vector<string> split(string source, string sep)
{
vector<string> result;
int sepLen = sep.length();
int lastPosition = 0;
int index = -1;
while (-1 != (index = source.find(sep, lastPosition)))
{
result.push_back(source.substr(lastPosition, index - lastPosition));
lastPosition = index + sepLen;
}
string lastString = source.substr(lastPosition);
if (!lastString.empty())
{
result.push_back(lastString);
}
return result;
}