/*
*@param str //需要截取的源字符串
*@param separator //分隔符
*/
std::string get_str_by_separator(const std::string& str,const std::string& separator);//获取分隔符前面的字符串
std::string tools::get_str_by_separator(const std::string& str,const std::string &separator)
{
std::string ext = "";
std::string::size_type idx = str.rfind(separator);
if (idx != std::string::npos) {
ext = str.substr(0, idx);
}
if (ext=="") {
assert(0);
}
return ext;
}
拆分成数组
std::vector<std::string> split(const std::string& src, const char* token);
std::vector<std::string> tools::split(const std::string& src, const char* token)
{
std::vector<std::string> vect;
int nend=0;
int nbegin=0;
while(nend != -1)
{
nend = src.find(token, nbegin);
if(nend == -1) {
std::string str = src.substr(nbegin, src.length()-nbegin);
if(str.length())
vect.push_back(str);
}
else {
std::string str = src.substr(nbegin, nend-nbegin);
if(str.length())
vect.push_back(str);
}
nbegin = nend + strlen(token);
};
return vect;
}