国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > 互联网 > c++ split实现

c++ split实现

来源:程序员人生   发布时间:2014-11-11 08:39:06 阅读次数:3270次

template<typename _Fty> inline void split(const std::string& s, const char* delims, _Fty op) {     size_t start = 0;     size_t last = s.find_first_of(delims, start);     while (last != std::string::npos)     {         if (last > start)             op(s.substr(start, last - start));         last = s.find_first_of(delims, start = last + 1);     }     if (start < s.size())         op(s.substr(start)); } inline void split(const std::string& s, const std::string& delims, std::vector<std::string>& values) { split(s, delims, [&values](std::string&& item) { values.push_back(std::move(item)); } ); } int main(int, char**) { std::vector<std::string> values; split("hello#@ffdsdf#@ffgfdg#@ gdsfd @ af#", "#", values); return 0; }


生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生