West Indies 117 for 6 (Dottin 46, Campbelle 45, Shrubsole 3-10) beat England 115 for 8 (Dunkley 35, Selman 2-15) by four wickets
Scorecard and ball-by-ball details
West Indies squeezed out England in a thrilling finish at the Daren Sammy Stadium to claim top spot in Group A and a semi-final against Australia - replaying their encounter in the final of the last tournament two years ago in Kolkata. England will take on India, winners of Group B, knowing that they must make rapid improvements with the bat and in the field despite scrapping to keep the possibility of victory alive until the final over.
On a surface that made life difficult for fluent scoring, West Indies were indebted to an innings of 46 from Deandra Dottin and 45 from Shemaine Campbelle - the latter dismissed with just three runs needed - as the reigning champions showed their composure to claim a fourth win from as many games in the group stage.
Defeat was hard on Anya Shrubsole, who picked up 3 for 10 with the ball after playing a vital part with the bat, her innings of 29 from 26 helping to resurrect England in a seventh-wicket partnership with Sophia Dunkley. Dottin, who was named Player of the Match, claimed two more wickets to become the tournament's leading wicket-taker but England fought back impressively to ensure a game that only had group positions at stake, with both sides having already qualified, gave the packed crowd a worthy finish in St Lucia's penultimate game.
The biggest difference between the teams was the fielding, as demonstrated during a frantic finale. With West Indies needing 18 from 13 balls, substitute fielder Fran Wilson dropped Campbelle at long-on, with the chance going straight through her hands and away for four. Dunkley then failed to get near a skied slog from Campbelle in the penultimate over, before Amy Jones dropped Britney Cooper from the final ball (Lauren Winfield then ran out Cooper with a direct hit to partially atone).
That left five runs required from the last six balls and although Shrubsole had Campbelle taken brilliantly at deep square leg by Danielle Wyatt from her second delivery, Kycia Knight thrashed the next through point to seal a win raucously celebrated by the home supporters.
A third-wicket stand of 68 between Dottin and Campbelle laid the platform for West Indies, though the pursuit was not without its nervy moments. Dottin got into block-or-bash mode, launching four sixes over the leg side but also stacking up dot balls as England sought containment after Shrubsole's two early strikes. Campbelle began slowly, too, scoring one from her first nine balls, but began to tick along nicely before taking charge of the chase once Dottin had holed out to deep square leg off Kirstie Gordon.
Although they were defending what looked a meagre total, England were given the perfect start when Shrubsole - who finished her previous appearance by taking a hat-trick - struck with her first and fourth balls, castling both Hayley Matthews and Stafanie Taylor with trademark inswingers.
Dottin got going with a towering blow off Natalie Sciver but was unable to rotate the strike against England's spinners. She did however twice launch Danielle Hazell for sixes over the midwicket; Hazell, brought into the side for Linsey Smith, was the one bowler unable to provide captain Heather Knight with control, her four overs costing 39.
After Dottin fell aiming one slog-sweep too many, Sophie Ecclestone bowled Natasha McLean to leave West Indies needing 26 from the last three overs. However, Hazell's next went for 12, including the drop of Campbelle on 39, as they faltered in the final exchanges.
England's effort was undermined from the off by the loss of regular wickets, with only three batsmen managing to make it into double-figures. West Indies fielded superbly, and looked to be in line for a simple chase with England reeling at 50 for 6 in the 11th over before Dunkley and Shrubsole combined to revive the innings with an partnership full of hard running and the occasional hearty thump.
The damage was done at the top by Shakera Selman's opening spell, which saw her bowl her allocation up front for figures of 4-0-15-2. She struck in the opening over, Chinelle Henry setting the tone for West Indies in the field by taking a leaping catch to dismiss Wyatt.
Tammy Beaumont, who was dropped on 12, was the only member of the top six to make a significant contribution, and her dismissal for 23 saw England lose momentum entirely as three wickets went down for two runs in seven balls. Heather Knight, who made 6 from 13 before falling lbw to Dottin, did at least spend some time in the middle; unlike Winfield, who was brilliantly run out from her second ball by Cooper's direct hit.
Dunkley, playing her maiden international innings in her third game, then showed some of the Kia Super League form that saw her selected for the squad despite being uncapped. But she was smartly held at long-off, by Henry again, and Dottin's horizontal grab to remove Shrubsole from the final ball of the innings suggested West Indies were not in the mood to be beaten.
Alan Gardner is an associate editor at ESPNcricinfo. @alanroderick