Здравствуйте, sjukov, Вы писали:
S>std::regex re ("(\\d+?),(.*?),(.*?),(.*?),(.*?)$") ; S>Для такой строки S>std::string sStr = "[xxx]:6,000000000,A,,TEST MESSAGE"; S>Ведь в первом параметре говорится что должны быть цифры, а там фигня другая.
Там таки да, говорится, что должны быть цифры (хоть одна) перед запятой.
Там таки не говорится, что до цифр не может идти какой-нибудь мусор.
Если хотите, чтобы регексп срабатывал от самого начала строки, то надо вставить каретку:
std::regex re ("^(\\d+?),(.*?),(.*?),(.*?),(.*?)$") ;