Tampa Bay pitcher Alex Cobb threw 10 pitches off the mound on Tuesday and was unhappy.

"It was horrible," Cobb said. "I was not looking forward to coming into tonight."

However, he was very glad he made the start Wednesday night.

Cobb struck out 10 and drove in a run with his first major-league hit, leading the Rays to a 3-0 victory over the St. Louis Cardinals, the Rays' seventh consecutive win.

Cobb (6-6) blanked the Cardinals on five hits over seven innings. It was the fourth time this season he has thrown at least seven innings without an earned run. Cobb missed 50 games last season with a concussion after he was hit near the right ear by a line drive off the bat of Kansas City's Eric Hosmer.

"Tonight was the best I've felt on the mound hands down since I've come back and even before that," Cobb said. "When my mechanics are right, all my pitches play off each other."

St. Louis manager Mike Matheny agreed.

"You could tell right from the top, he had a good split working today," Matheny said. "The guys had trouble laying off it below the zone. Their timing was right on it and it was just disappearing below the bat. He was locked in with it."

All three Tampa Bay pitchers were locked in, finishing with 15 strikeouts.

Jake McGee pitched the ninth inning for his ninth save in 10 opportunities.

The Rays have won 25 of their last 36 games and are 13-4 in July. On June 29, they had the worst record in the majors and have passed 11 teams since.

Tampa Bay completed its road trip at 5-0 and its eight-game road winning streak ties the franchise record set twice. The loss was the third straight for the Cardinals.

"We played well. We had a great vibe in the dugout," Tampa Bay manager Joe Maddon said.

St. Louis starter Lance Lynn (11-7) had won three straight and was 4-1 in his last five home starts. He struck out seven and gave up six hits in 6 1/3 innings. Lynn walked three, hit a batter and threw a wild pitch but stranded seven runners in the first five innings.

"I threw the ball well, I just gave up a couple too many with the way he was throwing the ball," Lynn said. "Some nights, you get outpitched."

Tampa Bay pitchers, hitting eighth, drove in the first runs in both games of the short series. On Tuesday, Rays pitcher Jake Odorizzi drove in the first run with a safety squeeze bunt.

Cobb was not to be outdone.

He picked up his first career hit in eight at-bats when he doubled down the first-base line with two outs in the second inning to give Tampa Bay a 1-0 lead.

"That was the coolest thing I've done in my big-league career," Cobb said. "I was kind of secretly hoping it was going to be a 1-0 win."

In the fourth, Cobb was hit on the right elbow by a fastball.

"Honestly, my initial thought was I had broken my elbow," Cobb said. "I'd never been hit by a 94 mile an hour (pitch) before. Once I got on first base, it wasn't hurting. It was like getting hit on your funny bone."

Maddon was worried.

"I told him I didn't want to miss his bat," Maddon quipped. "I had so many different thoughts. He didn't wince and there no hesitation on his part."

Tampa Bay made it 2-0 in the seventh with an unearned run. After a one-out single by Desmond Jennings, St. Louis second baseman Kolten Wong mishandled a possible double-play grounder to chase Lynn. Randy Choate walked pinch-hitter Brandon Guyer to load the bases. Evan Longoria drove in the run with a sacrifice fly off Seth Maness.

The Rays added a run in the ninth on an RBI single by Guyer.

After the first inning Cardinals third-base coach Jose Oquendo left two packages of crackers for Tampa Bay catcher Jose Molina on home plate. They were from Cardinals catcher Yadier Molina, who is on the disabled list with torn ligaments in his right thumb.

Rays shortstop Yunel Escobar was ejected in the fourth inning. Escobar, who was leading off, vehemently argued with plate umpire Dan Bellino, who called him out on a 3-2 pitch. Logan Forsythe replaced Escobar and played second base with Ben Zobrist moving to shortstop.

NOTES

Rams Pro Bowl P Johnny Hekker threw out first pitch. ... Cobb's hit was the first by a Rays pitcher this season. ... The Cardinals activated P Kevin Siegrist from the 15-day DL. He missed 52 games since May 24 with a left forearm strain. St. Louis optioned P Nick Greenwood to Triple-A Memphis. ... One day after outpitching Adam Wainwright, Odorizzi got to visit with his boyhood hero at the batting cage Wednesday. "He just said hello and a 'nice-to-meet-you' sort of thing," said Odorizzi, who is from nearby Highland, Ill. "We talked pitching a little bit, talked shop. He's a really nice guy."