C++之字符串分割函数split

 c++之字符串分割:

 1 /*
 2   *c++之字符串分割:
 3   */
 4     
 5 #include <iostream>
 6 #include <string>
 7 #include <vector>
 8 
 9 void split(const std::string& s, const std::string& delim,std::vector< std::string >& ret)
10 {               
11     size_t last = 0;
12     size_t index=s.find_first_of(delim,last);
13     while (index!=std::string::npos) {
14         ret.push_back(s.substr(last,index-last));
15         last=index+1;
16         index=s.find_first_of(delim,last);
17     }   
18     if (index-last>0) {
19         ret.push_back(s.substr(last,index-last));
20     }   
21 }  
22 
23 //取vector的最后一个元素:
24 std::string tmp = str_arr[str_arr.size()-1];
25 
26 int main()
27 {
28     std::string str = "test/jjksdf";
29     if(str.find("/") != std::string::npos){
30         std::vector<std::string> svec;
31         split(str, "/", svec);
32         std::cout << "first:" << svec[0] << " second: "<< svec[1] << std::endl;
33     }
34     std::cout << "src string: " << str << std::endl;
35 
36     return 0;
37 }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值