【转】C++实现字符串split方法

 

 1 vector<string> split(const string& src, const string& sep) {
 2     vector<string> tokens;
 3     int lastPos = 0,    // 上次找到的sep的位置
 4         index,
 5         sepLen = sep.length();
 6     while ( -1 != (index = src.find(sep, lastPos) )) {
 7         // substr(起始位置,字符串长度)
 8         tokens.push_back(src.substr(lastPos, index - lastPos));
 9         lastPos = index + sepLen;
10     }
11 
12     string lastString = src.substr(lastPos);
13     if (!lastString.empty()) {
14         tokens.push_back(lastString);
15     }
16     
17     return tokens;
18 
19 }

 

posted @ 2013-09-11 00:35  StrikeW  阅读(190)  评论(0编辑  收藏  举报