文字列をパーツに分割しようとしています。フォーマットは常にこのようになりますname from number on date
name
、number
、およびを分割する必要がありますdate
コード:
string name, number, date;
size_t from = s.find(" from ");
size_t on = s.find(" on ");
name = s.substr(0, from);
number = s.substr(from + 6, on);
date = s.substr(on + 4);
cout << "name:" << name << ", num:" << number << ", date:" << date << endl;
サンプル入力:John Smith from N656 on 01012013
サンプル出力:name:John Smith, num: N656 on 01012013, date:01012013
したがって、部分文字列を作成しようとすると明らかに問題がありますnumber
が、他の2つが機能しているため、何が原因なのか非常に興味があります.