South Africa's selectors have opted to rest Imran Tahir for the one-day leg of their tour to Sri Lanka.

Leg-spinner Tahir has claimed 139 wickets in the 50-over format but will sit out the five-match series in July and August as the Proteas look at alternative slow-bowling options ahead of the 2019 Cricket World Cup.

Keshav Maharaj and Tabraiz Shamsi will get the chance to impress in Tahir's absence in a team captained by Faf du Plessis.

"As far as the Proteas squad is concerned we have taken the strategic decision to rest Imran Tahir so that we can get a clearer picture as to who our best second spinner is to back him up at the World Cup," selection panel convener Linda Zondi said in a statement.

"Imran will be our first-choice spinner at the World Cup but, if we play him against Sri Lanka, it is unlikely that we will be able to play both Tabraiz Shamsi and Keshav Maharaj. By taking this route, we will be able to play the two of them together.

"Tabraiz has been the outstanding bowler in franchise white ball cricket this past season. Keshav has been outstanding for us in red ball cricket and we need to give him the opportunity to show us what he can do at international level in the ODI format."

Batsman Reeza Hendricks and seam bowler Junior Dala are included in a 15-man squad; the pair have yet to make their ODI debuts but have represented South Africa in T20 cricket.

Wiaan Mulder is also called up but fellow all-rounder Chris Morris is ruled out through injury.

Cricket South Africa has confirmed the players in action for the ODIs will also be considered for selection in the one-off T20 International match against the same opponent on August 14.