读书人

C++中1个string字符串如何根据空格拆

发布时间: 2013-01-11 11:57:35 作者: rapoo

C++中1个string字符串,怎么根据空格拆成几个字符串?
假如 string str1={"qwe bbb 333"};
怎么得到 string str2={"qwe"},string str3={"bbb"},string str4={"333"}.
[解决办法]
1. boost::algorithm::split
http://www.boost.org/doc/libs/1_52_0/doc/html/string_algo/usage.html

2. std::stringstream + std::getline

stringstream ss(str);
while(getline(ss, str, ' ')){ ... }
[解决办法]
可以用string的find和substr

或者字符串流处理:

#include <iostream>
#include <string>
#include <sstream>
using namespace std;
void main()
{
string str1 = "qwe bbb 333";
string str2,str3,str4;
istringstream is(str1);
is>>str2>>str3>>str4;
cout<<str2<<","<<str3<<","<<str4<<endl;
}

读书人网 >C++

热点推荐