文字列から整数を抽出しようとしています。ここで何が間違っているのでしょうか? 私は最初の価値しか得ていません。どのように私は文字列内のゼロでも動作させることができますか?この条件が常に真であることをC++複数の区切り文字を含む文字列内の整数を抽出する
if(c != ',' || c != '-' || c != ';')
注意を、あなたは常に句読点文字をINGのunget
です:
string str="91,43,3,23,0;6,9,0-4,29,24";
std::stringstream ss(str);
int x;
while(ss >> x)
{
cout<<"GOT->"<<x<<endl;
char c;
ss >> c; //Discard a non space char.
if(c != ',' || c != '-' || c != ';')
{
ss.unget();
}
}
むしろ無関係なノートでは、おそらく正規表現は、HTTPに探して価値がある:// WWW .cplusplus.com/reference/regex/regex_search/ – TuanDT