boost::split()的使用方式

引用的头文件 <boost/algorithm/string.hpp>

boost::split()函数用于切割string字符串,将切割之后的字符串放到一个std::vector<std::string> 之中;

有4个参数:

以boost::split(type, select_list, boost::is_any_of(","), boost::token_compress_on);

(1)、type类型是std::vector<std::string>,用于存放切割之后的字符串

(2)、select_list:传入的字符串,可以为空。

(3)、boost::is_any_of(","):设定切割符为,(逗号)

(4)、 boost::token_compress_on:将连续多个分隔符当一个,默认没有打开,当用的时候一般是要打开的。

结果:

根据结果可以看出:

split()切割的string为空时,是可以切割出来一个空字符的。

另一种情况,如果string中有连续的,,时的处理如下:

  std::string s1("hash,project,,string");std::vector<std::string> split_string;boost::split(split_string, s1, boost::is_any_of(","), boost::token_compress_on);std::string err("size=");err += std::to_string(split_string.size());LogErr(WARNING_LEVEL, ER_LOG_PRINTF_MSG, err.c_str());for (std::string s : split_string) {std::string ans(s);LogErr(WARNING_LEVEL, ER_LOG_PRINTF_MSG, ans.c_str());}

结果

size=3
hash
project
string

总结:boost里面考虑的异常情况还是比较多的,还是比较优秀的开发工具

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/463569.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java中文与ASCII码的转换

今天在研究Java中编码的时候&#xff0c;看到了Java中ascii码的强大。写了一个CoderUtils.java&#xff0c;以后会扩展它。 package com.xingxd.study.test; import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.io.PrintWriter; /** * …

第四周:机器学习知识点回顾

前言&#xff1a; 讲真&#xff0c;复习这块我是比较头大的&#xff0c;之前的线代、高数、概率论、西瓜书、樱花书、NG的系列课程、李宏毅李沐等等等等…那可是花了三年学习佳实践下来的&#xff0c;现在一想脑子里就剩下几个名词就觉得废柴一个了&#xff0c;朋友们有没有同感…

移植linux内核到i.MX6ULL过程

本文描述移植NXP官方 linux 5.4 内核到i.MX6ULL开发板。一、NXP官方linux内核1. 下载 NXP官方linux仓库地址为&#xff1a;https://github.com/Freescale/linux-fslc/tree/5.4-2.1.x-imx。选择该分支下载zip包即可&#xff0c;不要整个仓库下载&#xff0c;太大了&#xff1a;2…

Go语言之进阶篇http服务器获取客户端的一些信息

1、http服务器获取客户端的一些信息 示例: package mainimport ("fmt""net/http" )//w, 给客户端回复数据 //r, 读取客户端发送的数据 func HandConn(w http.ResponseWriter, r *http.Request) {fmt.Println("r.Method ", r.Method)fmt.Println…

R学习之——R用于文本挖掘(tm包)

首先需要安装并加载tm包。 1、读取文本 x readLines("222.txt") 2、建立语料库 > rCorpus(VectorSource(x))> rA corpus with 7012 text documents 3、语料库输出&#xff0c;保存到硬盘 > writeCorpus(r) 4、查看语料库 > print(r) A corpus with 7012…

C#索引器(二)

索引器允许类和结构的实例按照与数组相同的方式进行索引&#xff0c;索引器类似与属性&#xff0c;不同之处在于他们的访问器采用参数。被称为有参属性。 简单的索引器实例&#xff1a; 索引器与属性的比较&#xff1a; 标示方式&#xff1a;属性以名称来标识&#xff0c;索引器…

C++中的定位放置new(placement new)

转载&#xff1a;https://www.cnblogs.com/weekbo/p/8533368.html 今天在使用new时&#xff0c;需要使用特定位置的一块内存&#xff0c;因此查了资料&#xff0c;发现该文章有帮助就现转载做一个备份。 一般来说&#xff0c;使用new申请空间时&#xff0c;是从系统的“堆”&…

学了STM32要继续学习Linux吗?

关注我的读者中&#xff0c;有很大一部分是单片机&#xff08;STM32&#xff09;的开发者&#xff0c;经常看到有人问类似的问题&#xff1a;学了STM32要继续学习Linux吗&#xff1f;每个人的情况不同&#xff0c;到底要不要学习Linux&#xff0c;要结合自身的情况。有的人已经…

win7域内桌面黑屏

网络环境: win2k3域 客户端: win7, win2k8 现象: 登录域后&#xff0c;桌面背景是黑色&#xff0c;所有点击会变双击 微软对这个问题已经有了介绍&#xff0c;而且出了补丁。 http://support.microsoft.com/kb/977944转载于:https://blog.51cto.com/kzhou/932680

在Javascript中实现伪哈希表

了解数据结构的人应该都听说过哈希表这种数据结构&#xff0c;它是一种典型的利用键值对存储并检索数据的一种非线性结构&#xff0c;又称散列表或杂凑法。在一般的线性表结构中&#xff0c;数据的相对位置是随机的&#xff0c;即数据和用于检索的关键字之间不存在确定的关系&a…

模板函数与特化函数

本文转自&#xff1a;https://www.cnblogs.com/dracohan/p/3401660.html 转来收藏以便查阅&#xff0c;感谢原作者 今天在写代码时&#xff0c;遇到了模板和特化&#xff0c;在网上找了资料后问题呗一一解决&#xff0c;转载此文用于以后查阅&#xff0c;感谢原创者。其中增加…

这样调试内核启动流程

内核生命周期uboot 打印完 Starting kernel . . .&#xff0c;就完成了自己的使命&#xff0c;控制权便交给了 kernel 的第一条指令&#xff0c;也就是下面这个函数init/main.casmlinkage __visible void __init start_kernel(void){...rest_init();}start_kernel 相当于内核的…

iview实现多文件上传,前段到后台

前段 业务是 分别上传两个文件 &#xff1a;1.一个报告 一个 表格&#xff0c;而且限制了格式 报告为doc 表格为xsl2.有别的参数 也要&#xff0c;比如&#xff0c;上传人&#xff0c;上传日期&#xff0c;中心名称 这样的话&#xff0c;我们无法使用 iview 的直接上传&#x…

ios 图片添加阴影

2019独角兽企业重金招聘Python工程师标准>>> UIimageView *imageView [[UIImageView alloc ] init]; imageView.layer.shadowColor [UIColor blackColor].CGColor; imageView.layer.shadowOffset CGSizeMake(3,2); imageView.layer.shadowOpacity 0.6; imageVie…

asp.net定时执行任务-解决应用池回收问题----转载

在复杂的业务应用程序中&#xff0c;有时候会要求一个或者多个任务在一定的时间或者一定的时间间隔内计划进行&#xff0c;比如定时备份或同步数据库&#xff0c;定时发送电子邮件&#xff0c;定期处理用户状态信息&#xff0c;支付系统中定期同步异常账单等等&#xff0c;我们…

bool与string互转

今天在工作中遇到了将string转换成bool类型数据&#xff0c;查阅了工具书解决了问题&#xff0c;现将注意要点总结如下&#xff1a; 增加头文件&#xff1a;#include <sstream> 代码如下&#xff1a; 在codeblocks软件上测试结果如下&#xff1a; 使用者需要根据自己的实…

Go语言之高级篇beego框架之参数配置与路由配置

一、参数配置 beego默认会解析当前应用下的conf/app.conf文件 1.1、beego的参数配置 appname WEB httpport 8080 runmode dev 几种开发模式 [dev] httpprot 8080 [prod] httpport 8081 [test] httpport 8082 //备注&#xff1a; beego.AppConfig.String( "dev::m…

C++ int转string以及源码

今天遇到一个int类型数据转换为string&#xff0c;查了资料在c11标准中增加了全局函数std::to_string来实现该功能&#xff1a; string to_string (int val); string to_string (long val); string to_string (long long val); string to_string (unsigned val); string t…

OpenXLive 0.9.9 SDK发布,增加对SNS的支持

相信iOS和Android的游戏玩家对于OpenFeint都会比较熟悉&#xff0c;在北京有着这样的一个团队&#xff0c;他们一直在专注于Windows Phone平台上的第三方游戏社交平台的开发&#xff0c;这个产品叫做OpenXlive&#xff0c;近期发布了其SDK的0.9.9版本&#xff0c;并增加了向Twi…

Asp.Net MVC1.0正式版发布

下载地址: http://www.microsoft.com/downloads/details.aspx?FamilyID53289097-73ce-43bf-b6a6-35e00103cb4b&displaylangen 相对RC2版的变化不大&#xff0c;仅二点: 1.Jquery从1.3.1升级为1.3.2版本 2.修正了MVC Web应用程序中创建Silverlight时因项目不可用而出错的BU…