ARLINGTON, Texas -- Justin Grimm joined the Texas rotation as a stopgap.
The rookie right-hander pitched more like an ace Thursday.
Mitch Moreland hit a two-run homer and Grimm took a shutout into the sixth inning to help the Rangers snap their first three-game losing streak of the season with a 9-5 interleague victory against the Arizona Diamondbacks on Thursday.
Grimm (5-3) allowed four hits through five innings while Texas cooled off Arizona starter Brandon McCarthy on the way to a 9-0 lead.
The AL rookie leader in wins and strikeouts was replaced after Arizona's three-run sixth, and trails only ace Yu Darvish in victories on the Texas staff.
The 24-year-old Grimm, who made his debut last year, came up from the minors in April when opening day starter Matt Harrison went on the disabled list with back trouble.
He figured to stick around awhile with Harrison out until at least August, and was the AL rookie of the month for April. He gave up eight hits and two earned runs with three strikeouts in his third straight May win after starting the month with all three of his losses.
"He's gotten better as far as confidence-wise, believing and knowing that belongs here," catcher A.J. Pierzynski said. "It just a progression with young guys. He continues to get better. You can see it in his face. You can see it when he takes the mound in his mannerisms."
McCarthy (2-4) had allowed one run in 25 innings when the Rangers scored six in a span of four outs in the second and third.
The outburst started when center fielder A.J. Pollock misplayed a line drive by Nelson Cruz into a double. Pierzynski brought Cruz home with a double and scored on a two-out single from Leonys Martin.
The Rangers went up 6-0 in the third on three straight run-scoring hits -- a double from Adrian Beltre, a single by Cruz and a two-run homer from Moreland that hit near the top of the foul pole in right.
McCarthy lost for the first time since April 26 in his shortest outing of the season. He gave up nine hits and six runs in just 2 2/3 innings.
"I didn't have any life on my stuff," said McCarthy, whose ERA at Rangers Ballpark is 7.65 in four starts since he left Texas in 2009. "It was a fight for me. A good lineup hits those pitches. It's not an easy lineup to get out."
Grimm lost his shutout when he gave up four straight hits in the sixth, starting with a double from Paul Goldschmidt, who tied a career high with four hits. An error by Martin in center on a single by Miguel Montero led to an unearned run.
"It's just all about battling and competing against these guys," Grimm said. "Be aggressive with them, but not overly aggressive obviously."
The Rangers beat the Diamondbacks after they were swept in a doubleheader in Arizona on Monday and had the first of two games in Texas rained out Wednesday night.
"Honestly, I hadn't even thought about us losing three games," Moreland said. "We're going to go out and play our style of ball. We got out of it for a couple of games, but came back out today and made it work and it was a good win for us."
The Diamondbacks got within 9-5 in the seventh on RBI singles from Goldschmidt and Martin Prado off Texas reliever Michael Kirkman. Neal Cotts replaced Kirkman with two outs and struck out Montero with the tying run on deck.
Arizona had the tying run on deck again in the ninth when Robbie Ross got a game-ending double play from Cliff Pennington, who replaced Eric Chavez in the first inning after Chavez strained his right oblique on a swing.
"The guys came back," Arizona manager Kirk Gibson said.
Texas prospect Jurickson Profar had a career-high three hits a day after learning that his stay with the Rangers would be at least two weeks longer because second baseman Ian Kinsler's rib injury has been slow to heal.
Moreland and David Murphy, who hit his fifth homer, were among four Rangers with two hits.
Gibson said Chavez was on his way back to Arizona for an MRI. If Chavez is headed for the disabled list, the Diamondbacks might bring up Willie Bloomquist from a weeklong rehab assignment at Triple-A Reno. ... The Texas grounds crew stayed until 2 a.m. after a high winds from a thunderstorm prevented the crew from getting the tarp down before heavy rainfall. Both baselines were swamped and had to be rebuilt.