I've tried to implement a simple string-test method using c++ std::regex, in MS VC++ 2012.
const std::string str = "1.0.0.0029.443";
if ( std::regex_match( str, std::regex( "\\.0\\d+" ) ) )
std::cout << "matched." << std::endl;
I guessed that the code would match ".0029" part of the given str. However, it doesn't match at all. I tried it on http://regex101.com/ and it worked.