转载:http://blog.csdn.net/shanzhizi/article/details/17189267

C++的字符串没有分割函数,因此需要自己写方便使用。而受到开发工具的影响,有很多用起来比较麻烦啦,下面这个比较不错奥。

用STL进行字符串的分割

涉及到string类的两个函数find和substr:
1、find函数
原型:size_t find ( const string& str, size_t pos = 0 ) const;
功能:查找子字符串第一次出现的位置。
参数说明:str为子字符串,pos为初始查找位置。
返回值:找到的话返回第一次出现的位置,否则返回string::npos

2、substr函数
原型:string substr ( size_t pos = 0, size_t n = npos ) const;
功能:获得子字符串。
参数说明:pos为起始位置(默认为0),n为结束位置(默认为npos)
返回值:子字符串

实现如下:

/*File      : split1.cppAuthor    : MikeE-Mail    : Mike_Zhang@live.com*/
#include <iostream>
#include <string>
#include <vector>//字符串分割函数
std::vector<std::string> split(std::string str,std::string pattern)
{std::string::size_type pos;std::vector<std::string> result;str+=pattern;//扩展字符串以方便操作int size=str.size();for(int i=0; i<size; i++){pos=str.find(pattern,i);if(pos<size){std::string s=str.substr(i,pos-i);result.push_back(s);i=pos+pattern.size()-1;}}return result;
}int main()
{std::string str;std::cout<<"Please input str:"<<std::endl;//std::cin>>str;getline(std::cin,str);std::string pattern;std::cout<<"Please input pattern:"<<std::endl;//std::cin>>pattern;getline(std::cin,pattern);//用于获取含空格的字符串std::vector<std::string> result=split(str,pattern);std::cout<<"The result:"<<std::endl;for(int i=0; i<result.size(); i++){std::cout<<result[i]<<std::endl;}std::cin.get();std::cin.get();return 0;
}

C++的字符串分割函数相关推荐

  1. Split字符串分割函数

    非常非常常用的一个函数Split字符串分割函数. Dim myTest myTest = "aaa/bbb/ccc/ddd/eee/fff/ggg"Dim arrTest arrT ...

  2. strtok(), strtok_s() 字符串分割函数

    strtok(), strtok_s() 字符串分割函数 //strtok()函数原型/*_Check_return_ _CRT_INSECURE_DEPRECATE(strtok_s) _CRTIM ...

  3. php 字符串分割出数字,php 字符串分割函数的总结

    在php中字符串分割函数有很多很多,下面我来给各位朋友来介绍各种php中字符串分割实例,有需要的朋友可进入参考参考. PHP函数split()的基本语法为 array split ( string $ ...

  4. 小猿圈学习Python字符串操作--字符串分割函数

    对于长字符串,我们一般要怎么处理呢?除了切片,但是切片太麻烦了.python为我们提供了字符串切割函数,它不仅可以通过指定字符切割,也可以去除空格符哦.下面就看一下小猿圈Python讲师是怎么介绍Py ...

  5. 探索C语言之字符串分割函数:strtok和strsep的区别

    探索C语言之字符串分割函数:strtok和strsep的区别 概述 strsep - extract token from string(linux 下) strtok, strtok_r - ext ...

  6. php字符串分隔函数,php字符串分割函数的简单示例

    这篇文章主要为大家详细介绍了php字符串分割函数的简单示例,具有一定的参考价值,可以用来参考一下. 对php字符串分割函数感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! php中 exp ...

  7. php中的分割字符串函数,关于PHP中两款字符串分割函数explode,str_split

    关于PHP中两款字符串分割函数explode,str_split 2019.02.19 4140 将一个字符串分割成数组在日常的微信公众号开发中的应用应该是很多的.如果指定分割符,可以使用explod ...

  8. c语言中字符切割函数split,c 语言 指针 C语言字符串分割函数split实现

    c语言也有类似其他语言的split字符串分割函数,就是strtok使用方法如下://用逗号做分隔符,读出内容//char s[] = "123-sldkf-123ls-343434-dfjd ...

  9. c语言将字符串按空格分割_如何在c++中实现字符串分割函数split详解

    前言 在学习c++中string相关基本用法的时候,发现了sstream的istringstream[1]可以将字符串类似于控制台的方式进行输入,而实质上这个行为等同于利用空格将一个字符串进行了分割, ...

最新文章

  1. python模拟全部代码_Python模拟登陆实现代码
  2. Spring Cloud Alibaba即将正式毕业,Netflix之后新生力量值得期待!
  3. SQL Server 事务日志的问题
  4. mysql 创建和删除用户
  5. 虚拟机迁移及虚拟机高可用方案
  6. python适合做什么生意_适合Python的5大练手项目,你练了么?
  7. 2016物联网大趋势搞不懂?别担心,CES为你指点迷津
  8. python super()方法的作用_详解python的super()的作用和原理
  9. 点击列表高亮_办公小技巧:妙用条件格式 高亮显示查询结果
  10. 【产品】保险业务收付管理系统概要
  11. 创建Django项目及配置
  12. 服务器的tpmc查询网站,xxxx最新服务器选型指标_tpcc(tpmc)标准值_tpc官方整理.pdf
  13. Java常用工具类-发短信(集成阿里云短信服务)
  14. 根据主机名查询本机的ip地址
  15. leetcode 滑动窗口
  16. 关于vuze(毒蛙)linux版本移植的问题
  17. win10和win7游戏测试软件,绝地求生win7和win10哪个不卡?绝地求生系统要求测试-游侠网...
  18. 20美金 php,树莓派|个头小本事大:13 种 20 美元以下的树莓派 Zero 替代品
  19. 有创意的LED电子骰子
  20. IDM下载器:站点抓取相关设置介绍

热门文章

  1. Ajax — 图书管理
  2. Myeclipse连接Mysql数据库时报错:Error while performing database login with the pro driver:unable...
  3. mysql三-3:完整性约束
  4. Python中正则表达式讲解
  5. Intent Bundle页面跳转信息的传递
  6. 获取套接字相关联信息
  7. SendMessage函数的常用消息及其应用大全
  8. jQuery实现分页
  9. Apache CarbonData 1.5.0编译及安装
  10. python 阿狸的进阶之路(4)