本文共 867 字,大约阅读时间需要 2 分钟。
vectorsplit(const string& s, const string& sep){ vector v; string::size_type pos1, pos2; pos2 = s.find(sep); pos1 = 0; while(string::npos != pos2) { v.push_back(s.substr(pos1, pos2-pos1)); pos1 = pos2 + sep.size(); pos2 = s.find(sep, pos1); } if(pos1 != s.length()) v.push_back(s.substr(pos1)); return v;}
#include#include int main(){ char s[] = "a,b*c,d"; const char *sep = ",*"; //可按多个字符来分割 char *p; p = strtok(s, sep); while(p){ printf("%s ", p); p = strtok(NULL, sep); } printf("\n"); return 0;}//输出: a b c d
参考链接:https://www.cnblogs.com/carsonzhu/p/5859552.html