Worcestershire batsman Moeen Ali gave Sri Lanka a major fright in the tourists' warm up match before the one-day leg of their tour of England.
Moeen bludgeoned 136 off just 90 balls in the fixture at New Road, smashing three sixes and 16 fours along the way.
Chasing a victory target of 352 in 50 overs, the Royals reached 229-3 with 20 overs remaining to look on course for a famous victory.
But his dismissal effectively settled the match as a contest, Sri Lanka went on to win the match comfortably enough, the final margin being 57 runs.
Jeevan Mendis had earlier led a solid batting performance by the visitors with an unbeaten 99 off 71 balls, including 11 fours and three sixes.
Recalled veteran Sanath Jayasuriya also made a brisk 78 from 60 balls at the top of the order after Sri Lanka had won the toss and elected to bat.
Jayasuriya and fellow opener Mahela Jayawardene began well, scoring freely against the new ball attack of Matt Mason and Chris Whelan.
But Jayawardene fell to Worcestershire debutant Saeed Ajmal, who had a hand in the first four wickets for his new county.
Amjal struck twice in two balls in his first over having Jayawardene (18) caught behind with his second delivery and then accounting for Dinesh Chandimal lbw with his next.
Jayasuriya blasted three sixes and 10 fours before he holed out to Amjal at deep square leg off spinner Shaaiq Choudhry.
Amjal then struck again with the ball to claim his third wicket, dismissing Thilina Kandamby (35), who top edged a catch to Choudhry at short third man to leave Sri Lanka on 169-4.
Matthews and Mendis joined forces to post a century stand in 16 overs, the latter reaching his half-century in blistering fashion, smashing three successive maximums off Choudhry.
However the partnership was finally broken when Matthews holed out to James Cameron at long-off for 81 including two sixes and five fours.
Worcestershire survived the early loss of Jack Manuel as Moeen set about putting a strong Sri Lankan bowling attack to the sword.
The former Warwickshire batsman shared partnerships of 109 in 11 overs with Alexei Kervezee (45) and then 106 in 14 overs with James Cameron (65).
But after he was caught by keeper Chandimal off Ajantha Mendis, the hosts began to collapse, their last six wickets falling for a mere 24 runs, to leave them 294 all out after 44 overs.