General Ruben Alzate, Captain Jorge Rodriguez and attorney Gloria Urrego were released to the Red Cross two weeks after they were captured in rebel territory, the president announced on Twitter.
The release was not immediately confirmed by the Red Cross and the FARC.
The three former captives were “in perfect condition” when released in western Colombia, said Santos.
Alzate, Rodriguez and Urrego were captured in the township of Las Mercedes, Choco, after entering rebel territory ignoring all security protocols put in place to protect members of the military of such a high rank.
Over the past week, the FARC released five captives, two of which were soldiers captured in combat a few weeks before their release.
Santos had set the release of these captives as a condition to resume peace talks after the capture of the general, the highest-ranked member of the military ever to have fallen into the hands of the 50-year-old rebel group.
The administration and the rebels have been engaged in peace talks since November 2012. Both sides have continued to carry out military actions as no ceasefire was agreed for the duration of the talks.
If successful, the talks will end 50 years of violent conflict between the state and the FARC and will allow the latter to take part in politics.