Alexander Zverev kept his dream of a first Grand Slam title alive with a four-set win over Jakub Mensik in the French Open semi-finals in Paris. The second seed and world number three recovered from a third-set wobble to win 7-5, 6-2, 3-6, 6-3 and set up a final against either Flavio Cobolli or Matteo Arnaldi on Sunday.