我試圖在C++中使用向量在單個單詞中分割字符串。所以我想知道如何忽略向量中的空格,如果用戶在字符串中的單詞之間放置多個空格。忽略向量中的空格C++
我該怎麼做?
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
int main(){
cout<<"Sentence: ";
string sentence;
getline(cin,sentence);
vector<string> my;
int start=0;
unsigned int end=sentence.size();
unsigned int temp=0;
while(temp<end){
int te=sentence.find(" ",start);
temp=te;
my.push_back(sentence.substr(start, temp-start));
start=temp+1;
}
unsigned int i;
for(i=0 ; i<my.size() ; i++){
cout<<my[i]<<endl;
}
return 0;
}
也許用'的std :: regex'甚至更好'的std :: stringstream'。 – Ron
爲什麼不簡單地使用'cin >> string'並迭代? –
我會正確縮進代碼,以便幫助人們更清晰。 – s5s