获取字符串的第一个单词并从实际字符串中删除单词

时间:2013-11-10 05:59:32

标签: c++

从:

开始
string str = "10110111 12345 54321 2345321 1236543";

抓住第一个单词10110111并将其从实际字符串中删除。 在string word;中获得单词后,新字符串应为:

string str = "12345 54321 2345321 1236543";

我正在使用stringstream来获取这个词。

stringstream ss(str);
string word;
ss>> word;

现在我应该如何从字符串中删除这个单词?

1 个答案:

答案 0 :(得分:0)

我的第一个想法是找到第一个空格的位置并对你的字符串进行子串。

std::string s("1234 asdf zxcv 0987");
std::cout << s << std::endl; // "1234 asdf zxcv 0987"

size_t space_pos = s.find(" ");    
if (space_pos != std::string::npos) {
  s = s.substr(space_pos + 1);
}

std::cout << s << std::endl; // "asdf zxcv 0987"