NEW YORK — Stephen Strasburg outpitched Noah Syndergaard, rookie Victor Robles homered for Washington’s only hit until the ninth inning and the Nationals beat the Mets 4-0 to spoil New York’s home opener Thursday.

Wilmer Difo drove in two runs, and Washington’s struggling bullpen shined after Strasburg (1-0) struck out nine in 6 2/3 innings. Matched against Syndergaard for the second time in six days, Strasburg took a one-hitter into the seventh before giving up consecutive singles with two outs.

Matt Grace threw a called third strike past pinch-hitter J.D. Davis, then Justin Miller and Tony Sipp combined to strike out three in a hitless eighth. Sean Doolittle completed the four-hitter, making Strasburg 8-1 with a 2.14 ERA in 11 starts at Citi Field.

Coming in, Washington relievers ranked last in the majors with an 11.02 ERA, and opponents were batting .377 against them. But a week after getting shut out in their home opener by Jacob deGrom and the Mets, the Nationals turned the tables.

The only hit Syndergaard (0-1) allowed in six innings was Robles’ leadoff homer in the sixth. He struck out six and walked two.

PIRATES 2, REDS 0: Jordan Lyles pitched five effective innings in his Pittsburgh debut and the Pirates extended visiting Cincinnati’s scoreless streak.

A day after the Reds got three hits in a 1-0 loss to Milwaukee, they managed six hits against four Pittsburgh pitchers.

Lyles, who played for San Diego and Milwaukee last year, allowed three hits. He walked three and struck out two. Lyles was activated from the injured list before the game after being out with discomfort on his right side.

Nick Kingham (1-0) pitched two innings of relief, conceding two hits and striking out two. Richard Rodriguez bounced back with a shutout inning after being scored upon in his first two outings of the season.

AMERICAN LEAGUE

TIGERS 5, ROYALS 4: Spencer Turnbull struck out 10 in six innings, and Detroit drew four straight walks to start the bottom of the seventh, taking the lead for good in a home opener.

Josh Harrison stole two bases and scored three times for the Tigers. It was 3-3 in the seventh when Kansas City reliever Kyle Zimmer (0-1) walked Harrison, Nicholas Castellanos and Miguel Cabrera in succession. Kevin McCarthy then came on and walked Niko Goodrum on four pitches, forcing in a run.

Christin Stewart added a sacrifice fly that inning to make it 5-3. Blaine Hardy (1-0) allowed a solo homer to Alex Gordon in the eighth, his second inning. Shane Greene pitched the ninth for his fifth save in five chances.

Whit Merrifield singled, tripled and scored twice for the Royals, extending his hitting streak to 26 games dating to last season. He came up with two outs in the ninth and Billy Hamilton on first, but the speedy Hamilton never stole second, and Merrifield grounded out.

YANKEES 8, ORIOLES 4: Gleyber Torres homered twice, had a career-high four hits and drove in four runs, and New York spoiled Baltimore’s home opener.

Gary Sanchez and Luke Voit also homered for the Yankees, who beat Baltimore in their own opener last week.

Torres’ first home run of the season got New York within 3-1 in the third inning, and his three-run drive in the sixth off reliever Mike Wright (0-1) put the Yankees up 5-4. Torres also doubled.

That was enough to take the edge off opening day at Camden Yards and the sellout crowd of 44,182 after the rebuilding Orioles won 2 of 3 at both Yankee Stadium and in Toronto.

INDIANS 4, BLUE JAYS 1: Trevor Bauer was pulled by Manager Terry Francona after seven hitless innings and 117 pitches, and watched from the dugout as Freddy Galvis of visiting Toronto broke up the bid for a combined no-hitter with a leadoff single in the ninth inning.

Bauer was attempting to throw Cleveland’s first no-hitter in 38 years – on the 25th anniversary of Progressive Field’s opening – but was taken out as his pitch count increased.

Jon Edwards got two outs in the eighth before closer Brad Hand worked out of a bases-loaded jam. But Hand gave up a hard single to center by Galvis. Moments later, Alen Hansen followed with Toronto’s second hit and the Blue Jays scored before Hand struck out two for his third save.

Bauer was six outs away from completing his no-hitter when Francona removed him as a precautionary measure. He may have been able to go further – he threw a career-high 127 pitches last season – but on a chilly night and with so much season left, Francona played it cautiously and replaced Bauer.