Morgan 201128374 4383745,12394 5455.30
drew 22223 91939,5324 55.9
stringstream strm;
sstream strm(s)
strm.str() return a copy of a string
strm.str(s) copies the string into strm return void.
当我将一个变量赋给Stringstream时,我正在寻找更多的功能。我怎么会忽略标点符号?我的书只列出了上述两个功能。
struct PersonInfo{
string name;
vector<string> numbers;
}
string line, word;
vector<PersonInfo> people;
while(getline(cin, line))
{
PersonInfo Info;
istringstream record(line);
record >> info.name;
while (record >> word)
info.numbers.push_back(word);
people.push_back(info);
}
答案 0 :(得分:0)
我如何忽略标点符号?我的书只列出了上述两个功能。
使用std :: getline,它接受一个分隔符参数:
if(! std::getline(record, line, ' ') ) // reads to first space
throw std::runtime_error{ "bad stream format" };
您应该读取分隔符,并将分隔符替换为''或';'。