A back injury has ruled Afghanistan's star leg-spinner Rashid Khan out of the start of the three-match series against Sri Lanka, which starts on Friday.

The 24-year-old is the highest wicket taker for Afghanistan, with 163 scalps to his name in one-day international cricket.

"Obviously it's a huge loss for us," Afghan captain Hashmatullah Shahidi told journalists on Thursday.

"He's been a key performer over the years and we will miss him. But that also provides someone else an opportunity, and it's a good challenge against a strong team like Sri Lanka."

Afghanistan have their bowling bases covered with off-spinners Mujeeb Ur Rahman and Mohammad Nabi, and left-arm wrist spinner Noor Ahmad.

The three matches between Friday and June 7 will all be played at Hambantota in Sri Lanka's south, which has not hosted an international match since February 2020.

Afghanistan have already qualified for this year's World Cup in India but Sri Lanka must play a qualifying round in Zimbabwe.

"The focus will be on winning the series," Hashmatullah said. "With the World Cup ahead and played in similar conditions, we'll use it as preparation and take a look at some of the players in our ranks."

Sri Lanka have recalled opening batsman Dimuth Karunaratne to stabilise their batting.

The 35-year-old last played in an ODI more than two years ago.

"We already brought in Angelo Mathews into the fold in our last white-ball series," captain Dasun Shanaka said.

"We have a relatively young team and it is good to have that depth."

Dushmantha Chameera is expected to lead the attack, making a comeback from injury after seven months.

Sri Lanka also have injury concerns, with leg-spinner Wanindu Hasaranga a doubtful starter with a foot problem.

Opening batsman Pathum Nissanka has recovered from a back injury but hard-hitting batter Kusal Perera pulled out due to a hamstring strain.

Sri Lanka have also called up Indian Premier League winner Matheesha Pathirana, a key player in the Chennai Super Kings team that won a record-equalling fifth title on Monday.

Pathirana, nicknamed "Baby Malinga" for his slingshot action similar to Sri Lanka great Lasith Malinga, has played two T20s for his country.

"No doubt he has got a bright future ahead and will have a big impact in years to come," Shanaka said.

Afghanistan squad: Hashmatullah Shahidi (captain), Rahmanullah Gurbaz, Najibullah Zadran, Mohammad Nabi, Ikram Alikhil, Azmatullah Omarzai, Rashid Khan, Mujeeb Ur Rahman, Noor Ahmad, Abdul Rahman, Fazalhaq Farooqi, Fareed Ahmad Malik, Rahmat Shah, Ibrahim Zadran and Riaz Hassan.

Sri Lanka squad: Dasun Shanaka (captain), Pathum Nissanka, Dimuth Karunaratne, Kusal Mendis, Sadeera Samarawickrama, Angelo Mathews, Dhananjaya de Silva, Charith Asalanka, Chamika Karunaratne, Dushmantha Chameera, Matheesha Pathirana, Lahiru Kumara, Kasun Rajitha, Wanindu Hasaranga, Maheesh Theekshana and Dushan Hemantha.