10/09/03 22:32:03
boost::regex re("(\\d+)(?:,(\\d+))*");
boost::smatch result;
std::string str = "1,2,3,4";
if (boost::regex_match(str, result, re))
{
for (int i=0; i<result.size(); i++)
printf("%d: %s\n", i, result.str(i).c_str());
}
このようなコードを実行すると1と4しかresultから取り出せないんですが、
1から4まで全て取り出すにはどうしたらいいですか?
実際はもっと複雑なフォーマットなので正規表現でなんとかしたいです。