(https://[\w\d:#@%/;$()~_?\+-=\\\.&]*)
No hay manera solo matchea la primera url, he probado con todo.
Saludos.
Edito: Da igual ya no lo necesito, encontré resolver el problema con el mismo regex, cambiando las funciones que usaba:
for (auto it = std::sregex_iterator(data.begin(), data.end(), urlExpression); it != std::sregex_iterator(); ++it)
{
std::string url = it->str();
url = std::regex_replace(url, std::regex("https://"), "http://", std::regex_constants::format_first_only);
url = std::regex_replace(url, std::regex("&"), "&");
URLMonitor::GetInstance()->AddSecureLink(mClientIP, url);
}
Precioso.