Police in the canton of Vaud had expressed concern that more people might be stuck in the front carriage of one of the trains, which was smashed in by eight metres in the head-on collision on Monday evening.
The crash occurred outside the station of Granges-pres-Marnand, between the Geneva and Neuchatel lakes in western Switzerland.
"Rescue workers have worked all night to cut apart the wreck of the locomotive… and have thus been able to establish that no one is inside," police said in a statement.
The 24-year-old French driver of that train, which had been travelling north from the lakeside city of Lausanne towards the town of Payerne, was killed when a southbound train on the same line apparently failed to respect a signal.
His body was pulled from the wreckage early on Tuesday.
Twenty-five people were injured in the crash, most of them slightly, and by Wednesday, only one person remained in hospital, police said.
Public prosecutor Stephan Johner has launched a criminal investigation to determine the cause of the crash.
Investigators have already said they believe the driver of the southbound train, operating a slower stopping service, caused the crash by ignoring a signal and failing to wait for the faster northbound service to pass.