/*
buf:待分割字符串
delim:分隔符
*/
std::vector<std::string> split(const std::string &buf, const std::string &delim)
{
std::vector<std::string> elems;
size_t pos = 0;
size_t len = buf.length();
size_t delim_len = delim.length();
if (delim_len == 0)
return elems;
while (pos < len)
{
int find_pos = buf.find(delim, pos);
if (find_pos < 0)
{
elems.emplace_back(buf.substr(pos, len - pos));
break;
}
elems.emplace_back(buf.substr(pos, find_pos - pos));
pos = find_pos + delim_len;
}
return elems;
}