Sniffer dogs were brought in to search for any victims trapped under a pile of twisted metal and masonry, though it was not confirmed that anyone was buried under the debris.
Gauteng provincial health minister Gwen Ramokgopa said workers were on the roof when it collapsed into a public area of the Charlotte Maxeke hospital in central Johannesburg.
"So far we have five injuries, two of them were the contractors themselves, two were our patients, and one is our employee," Ramokgopa told reporters at the scene.
"We are still digging at the moment, but nothing has been found yet," spokesman Russel Meiring told AFP.
More From This Section
"We have the canine search and rescue team there, we are not sure if there are any people trapped."
The main opposition Democratic Alliance party claimed that stones had been shifted onto the roof that caved in near the maternity department of the hospital.
The Charlotte Maxeke is a large public general hospital in central Johannesburg, named after a social worker and activist who died in 1939.