C++ 分割字符串,可以识别开头的,中间的,末尾的一个或者多个空格
2014-04-24 17:47
597 查看
#include <iostream> #include <string> #include <vector> //可以区分一个或者多个空格分割的字符串 std::vector<std::string> splitString(std::string sen){ std::vector<std::string> vec; while (sen.find(" ") < sen.length()) { if(sen.find(" ") == 0 ){ sen = sen.substr(sen.find(" ") + 1, sen.length()); continue; }else{ vec.push_back(sen.substr(0, sen.find(" "))); sen = sen.substr(sen.find(" ") + 1, sen.length()); } } return vec; } int main () { std::string str (" My name is tianyu bai ");//sen.length() 不包括后面的‘\0’ std::vector<std::string> vec = splitString(str); for(auto it : vec){ std::cout<<it<<std::endl; } return 0; }
相关文章推荐
- 面试题 删除字符串开始以及末尾的若干空格,并且把中间多个空格转化为一个
- java以一个空格或者多个空格进行字符串的分割
- C#自己编写的一个函数 可以删除字符串中指定开头和结尾中间的字符串
- 【C++】用栈实现倒序输出一个字符串(可以带空格)
- C#自己编写的一个函数 可以删除字符串中指定开头和结尾中间的字符串
- 将字符串中开头和结尾空格去掉,并且中间空格仅仅保留一个
- java----输入一个字符串,去掉字符串开头的空格和结尾的空格,若字符串中间有连续的空格,则只保留一个空格。
- java----输入一个字符串,去掉字符串开头的空格和结尾的空格,若字符串中间有连续的空格,则只保留一个空格。(使用list解答)
- Delphi中判断一个字符的位置在字符串开头或者末尾
- 去除一个字符串的开头和结束部分的空格,中间有连续的两个或两个以上的空格,则保留一个空格
- leetcode 434. Number of Segments in a String 按照空格分割字符串 + C++的stringstream的一个很好应用示范
- 去掉字符串开头,结尾或者中间的空格及其他不想要的字符
- 删除字符串开始及末尾的空格,并且把数组中间的多个空格转化为一个
- 给定一个字符串s和一个单词dict的字典,确定s是否可以分割成一个或多个字典单词的空格分隔的序列。 s ="leetcode", dict =["leet", "code"].
- C++ 又一个字符串分割算法
- [删除字符串中多余的空格]给定字符串,删除开始和结尾处的空格,并将中间的多个连续的空格合并成一个
- 2018阿里校招笔试——给定一个字符串S和有效单词的字典D,请确定可以插入到S中的最小空格数,使得最终的字符串完全由D中的有效单词组成,并输出解。
- C++和C代码:删除字符串中所有前导空格和所有后导空格,单词之间最多只留一个空格
- 练习1-21 编写程序entab,将空格串替换成最少数量的制表符和空格,但要保持单词之间的间隔不变。假设制表符终止位的位置与练习1-20的detab程序的情况相同。当使用一个制表符或者一个空格都可以到达下一个制表符终止位时,选用哪种替换字符比较好。
- 用js 用js判断一个字符串是否是以某个子字符串开头如:1600054是否以16开头,可以这样做: