Japan's Kei Nishikori reached his third semi-final in six weeks with a marathon 6-4, 5-7, 6-4 win over Mikhail Kukushkin at the Swiss Indoors here on Friday.
The 32nd-ranked Nishikori also made it to the final four last month in Kuala Lumpur and at the Shanghai Masters, which was the best showing of his career.
The 21-year-old, who holds the highest ATP ranking ever for a Japanese player, will play either top seed Novak Djokovic or former Australian Open finalist Marcos Baghdatis on Saturday.
The youngster began his week in Basel with his second career top 10 win, putting out year-end final contender and fourth seed Tomas Berdych, having previously upset Jo-Wilfried Tsonga in the Shanghai second round.
The Florida-based Nishikori took 20 minutes short of three hours to win his sixth quarter-final from seven played this season.
The match with Kazak Kukushkin was break-filled, with Nishikori converting seven of 16, while losing his own serve six times.