England staved off a heroic fightback from Sri Lankan captain Angelo Mathews to win by 10 runs in Delhi on Saturday and clinch a spot in the semi-finals. Sri Lanka finished on 161/8 in response to England's 171/4.

England's first-innings score was built on majestic late hitting from their wicket-keeper Jos Buttler who smashed 66 in 37 balls to take England from 99/3 in 15 overs to 171 in 20. Only Jeffrey Vandersay looked probing for Sri Lanka, finishing on 2/26 in his four overs.

Sri Lanka stumbled early in their chase and it seemed the game was over after they were 15/4 in the second over. However captain Mathews had other ideas as he set about building a glorious fightback with three boundaries and five huge sixes. However just when Sri Lanka got close, Mathews suffered a hamstring strain which greatly affected his movement. He soldiered on though but no one else gave him company - as Chamara Kapugedera (30 off 27), Thisara Perera (20 off 11) and Dasun Shanaka (15 off nine) were dismissed at key moments. Sri Lanka needed 11 off the final over but, unfortunately for them, Mathews could not deliver the finish they wanted, despite remaining unbeaten on 73 off 54 balls.

As a result of this win, Sri Lanka and South Africa were eliminated and England become the second team to qualify for the semifinals in Group 1, along with West Indies.