#if 0
//..................split()函数
/*vector<string>split(const string &s,const string &seperator);*/
/*输入一个字符串,一个分隔符字符串(可包含多个分隔符,返回一个字符串向量*/
vector<string>split(const string &s,const string &seperator)
{
vector<string>result;
int seplen = seperator.size();//计算分割字符串的长度
int pos = 0;
int index = -1;
/*size_t find(const string &str,size_t pos);
从string 的pos位置寻找,str是要寻找的字符串
函数返回字符串第一次出现的位置 */
while(-1 !=(index = s.find(seperator,pos)))
{
/*substr(size_type_Off,size_type_Count = npos)const;
复制子字符串,从指定位置开始,有指定的长度
_Off:begin pos _Count :所复制的字符数目*/
result.push_back(s.substr(pos,index-pos));
pos = index+seplen;
}
string laststring = s.substr(pos); //最后一个分隔符后面的内容
if(!laststring.empty())
result.push_back(laststring);
return result;
}
int main()
{
string s = "qq,sd,adscc,sdefde,sadse,adsdece";
string sep = ",";
// string s = "aaa,*bbed,*swq,*dfsdsd,*sqwsxx,*cc,*saas";
// string sep = ",*";
vector<string>v = split(s,sep);
for(vector<string>::size_type i = 0;i!=v.size();++i)
cout<<v[i]<<" ";
cout<<endl;
}
#endif
//...............strtok()函数
#if 0
/*char *strtok(char *str,const char *delim);*/
int main()
{
char buf[] = "hello-I-am-a-girl*I-like*listen-music";
char *sep = "-*"; //可以按多个字符分割
char *temp = strtok(buf,sep);
while(temp)
{
printf("%s ",temp);
temp = strtok(NULL,sep);
}
printf("\n");
return 0;
}
#endif
相关文章
- MySQL自定义函数与存储过程的创建、使用、删除
- [C++]深入理解C++中的泛型编程、函数模板与类模板
- 关于C++与Java中虚函数问题的读书笔记
- java的finalize()方法与C++的析构函数
- 输入5个学生3门课的成绩,编写程序统计并输出每个平均分, 每门课程的平均分,找出所有15个分数中最高的分数所对应的学生和课程。要求分别用函数实现下列功能:1)输入所有学生的每门课成绩2)计算并
- ffmpeg av_buffer_unref的逻辑实现; av_freep 和 av_freep函数的区别
- 幂函数与指数函数的区别
- react 函数式组件 使用的第二个参数完成路由传值的方法,此方法可类似于post传值,不在地址上显示。实现更优雅的传值
- fprintf、sprintf、printf、fwrite函数的用法与区别
- 深入 MySQL 高级查询:JOIN、子查询与窗口函数的实用指南