Jos Buttler starred for England as they moved to the brink of the semi-finals ©Getty Images

Jos Buttler scored his maiden international Twenty20 century as England edged out Sri Lanka to take a giant step towards qualifying for the semi-finals at the T20 World Cup in the United Arab Emirates.

Buttler's unbeaten 101, sealed with a six off the final ball of his side's innings, propelled England to a total of 163-4 from their 20 overs at Sharjah Cricket Stadium.

Sri Lanka at one point needed 34 from just 20 balls before England rallied with a clinical and composed fielding display to close out victory by 26 runs.

The win moved England to the brink of the semi-finals and maintained their unbeaten start to the tournament.

They will be assured of a place in the last four if Bangladesh beat South Africa in tomorrow's early clash.

Only an improbable swing of net run-rate in favour of South Africa and Australia will deny England, seeking to add the T20 World Cup to the 50-over crown they claimed in dramatic fashion in 2019, a spot in the semi-finals.

England made a sluggish start on a slow pitch and were 35-3 early on before Buttler, in partnership with captain Eoin Morgan, came to the rescue.

Buttler began conservatively and reached his half century after 45 balls, his slowest 50 in the T20 format for England.

But he then took off, ruthlessly despatching the Sri Lankan attack to all corners of the ground to give England a defendable total.

Chasing 165 for victory, Wanindu Hasaranga was in superb form and looked to have provided a platform for Sri Lanka to clinch what would have been a surprise win before he was dismissed for 34 following a fine relay catch on the boundary.

Sri Lanka captain Dasun Shanaka, who put on 53 with Hasaranga, was then run out in superb style by Buttler in the next over as Sri Lanka's challenge faded.

They were eventually bowled out for 137 after the final three wickets fell for three runs in seven balls.