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.
Duggar sisters unveil Christian dating rules in new book
Attkisson leaves CBS News, reportedly over network's 'liberal bias'