```
find() : Finds the first substring equal to the given character sequence
find_first_of() : Finds the first character equal to one of characters in the given character sequence
//字符串分割函数 str为待分割的字符串 pattern为任意分割符(**每一个字符都为分割符**),例如:";,"是以 ';' 和 ',' 分割,并且去掉了分割后的空字符串。 sbcssdfs 以s分割得 "bc" "df"
vector<string> split(string str, string pattern)
{vector<string> ret;if (pattern.empty()) return ret;size_t start = 0;size_t index = str.find_first_of(pattern, 0);while (index != string::npos){if (start != index)ret.push_back(str.substr(start, index - start));start = index + 1;index = str.find_first_of(pattern, start);}if (!str.substr(start).empty())ret.push_back(str.substr(start));return ret;
}
//分割后保留空字符串。sbcssdfs 以s分割得 "" "bc" "" "df" ""
vector<string> split(string str, string pattern)
{vector<string> ret;if (pattern.empty()) return ret;size_t start = 0;size_t index = str.find_first_of(pattern, 0);while (index != string::npos){ret.push_back(str.substr(start, index - start));start = index + 1;index = str.find_first_of(pattern, start);}ret.push_back(str.substr(start));return ret;
}
```
用Poco中的StringTokenizer
```
#include "Poco/StringTokenizer.h"
#include "Poco/String.h" // for cat
// 分割字符串,s:将被分割的字符串,k:分割符
// 例如: k是 ";,"表示用 ';' 和 ',' 分割
std::vector<std::string> SplitString(std::string s, std::string k)
{/*Poco::StringTokenizer t1("red, green, blue", ",");// "red", " green", " blue"     (note the whitespace)Poco::StringTokenizer t2("red,green,,blue", ",");// "red", "green", "", "blue"Poco::StringTokenizer t3("red ; green , blue", ",;",Poco::StringTokenizer::TOK_TRIM);// "red", "green", "blue"Poco::StringTokenizer t4("red; green,, blue", ",;",Poco::StringTokenizer::TOK_TRIM | Poco::StringTokenizer::TOK_IGNORE_EMPTY);// "red", "green", "blue"std::string ss(Poco::cat(std::string("; "), t4.begin(), t4.end()));// "red; green; blue*/Poco::StringTokenizer st(s, k);//这样是不去掉 "" ,当加上 TOK_IGNORE_EMPTY(宏定义为1)即去掉 "" 了。std::vector<std::string> vecRet(st.begin(), st.end());return vecRet;
}
```
另外一个字符串整体为分割符:(单个字符就跟上面的一样了)
```
//pattern作为一个整体当分割符,(不去掉 "")
vector<string> split(string str, string pattern)
{vector<string> ret;if (pattern.empty()) return ret;size_t start = 0;size_t index = str.find(pattern, 0);while (index != string::npos){ret.push_back(str.substr(start, index - start));start = index + pattern.size();index = str.find(pattern, start);}ret.push_back(str.substr(start));return ret;
}
```

字符串去除空格

void eatspaces(char* s)
{int i = 0;int j = 0;while ((s[i] = s[j]) != '\0'){++j;if (s[i] != ' ')++i;}
}

转载于:https://www.cnblogs.com/htj10/p/11354618.html

分割字符串,字符串去除空格相关推荐

  1. (二十九)、Java字符串中去除空格

    1.方法分类 str.trim(); //去掉首尾空格 str.replace(" ",""); //去除所有空格,包括首尾.中间 str.replaceAll ...

  2. js实现字符串中去除空格

    let str = 'A H F ADS FFF' //需要去除空格的字符串 let str_split = str.split(' ') //用空格进行切割得到[ 'A', 'H', 'F', 'A ...

  3. Python 按行读取文件内按分隔符分割字符串(去除空格和换行、字符串分割)

    a = "dba abc\n"print (a.strip()) print (a.split(" ")) print (a.split(" &quo ...

  4. 换行符javajava去除字符串中的空格、回车、换行符、制表符

    在改章节中,我们主要介绍换行符java的内容,自我感觉有个不错的建议和大家分享下 每日一道理 只有启程,才会到达理想和目的地,只有拼搏,才会获得辉煌的成功,只有播种,才会有收获.只有追求,才会品味堂堂 ...

  5. Linux Shell字符串变量头尾去除空格

    本身想用简单的拿来主义,使用某搜索引擎推荐的博文,来去除Linux Shell中字符串变量头尾的空格. 但是,发现推荐的方法,竟然很多文章是用echo "some string" ...

  6. 字符串去除空格和回车

    java去除字符串中的空格.回车.换行符.制表符 跳至 [1] [全屏预览] import java.util.regex.Matcher; import java.util.regex.Patter ...

  7. java 去掉字符串中的换行_java删除字符串中的空格、回车、换行符、制表符程序...

    本程序来详细的介绍关于java删除字符串中的空格.回车.换行符.制表符程序实例,有需要学习的朋友可参考参考. java换行符 那是因为默认的情况下,界面上的换行时用的"n",这是L ...

  8. 【Oracle】【6】去掉字符串中的空格/字符

    SELECT TRIM(' 去除前后空格 ') FROM DUAL;SELECT REPLACE(' 去除 任意位置的空格 ', ' ', '') FROM DUAL; 扩展: 1,both, tra ...

  9. java 字符串 去除_java 字符串中去除特定的字符

    java String字符串 去除特定的字符  程序如下 package com.xing.test; import java.util.regex.Matcher; import java.util ...

最新文章

  1. 深度文本匹配在智能客服中的应用
  2. ST公司STM32F4与STM32F1的区别
  3. Python 技术篇-百度语音合成SDK接口调用演示
  4. js的栈堆与浅拷贝、深拷贝的理解
  5. 建筑建模学习笔记2——3DMax房屋框架建模
  6. 插入排序算法 java_排序算法实现-插入排序(Java版本)
  7. 关于数据准备时,自动棌番的主键,这一字段数据的注意(IT总结之五)
  8. js中改变原数组的方法以及解决改变原数组的方法
  9. 设计模式-02原型模式
  10. API网关(什么是API网关、如何设计统一网关?)
  11. 关于windows版本电脑版微信更新后无法显示好友头像以及接收图片和表情的解决方案
  12. Vision Transformer综述翻译
  13. excel就绪筛选模式_Excel自动筛选器显示筛选器模式
  14. c v开发语言,被质疑的 V 语言
  15. awk oracle,工具: ass109.awk 分析 Oracle 的跟踪文件
  16. 前端开发实战:实现京东购物平台的静态首页
  17. BPR英文及中文全称
  18. evus是什么意思_去美国之前要上网做evus是什么意思
  19. 思辨领域模型--DDD和关系型数据库
  20. 作为码农的我嫁了个程序员老公(结婚、生娃、婆媳、未来)

热门文章

  1. 北航微软提出新型数据集TableBank,从图像中检测和识别表格
  2. 零基础想学Python,明白这2点,越快年薪30W!
  3. 史密斯预估器matlab仿真,(毕业论文)史密斯预估器设计.doc
  4. 重磅!校友会2020中国大学排名出炉!为自己母校感到骄傲!
  5. 带你自学Python系列(十二):Python函数的用法(二)
  6. 用eclipse开发android小程序,【转】Eclipse 开发Android小程序遇到的问题总结
  7. tensorflow的数据输入
  8. 自动驾驶路径轨迹规划(三阶曲线spline)
  9. 安装unzip_史上最详细的WordPress安装教程(六):安装WordPress
  10. java中飞飞检查异常_Springboot项目如何在controller层统一返回数据以及处理异常