Semin's 10th goal of the season just 66 seconds into the game put the Hurricanes ahead to stay and Staal's tally off a Semin assist early in the final frame iced the victory for Carolina, which won for the first time since March 12.
Justin Peters turned aside 34-of-35 shots for the second-place Hurricanes, who pulled to within four points of Southeast Division-leading Winnipeg.
Tuomo Ruutu added two assists for Carolina.
Sign language interpreter at Mandela service called out as fake on Twitter
Campus cop fatally shoots Texas student during traffic stop