PHILADELPHIA — Stephen Strasburg was nearly unhittable.

Strasburg gave up one hit and tied a career-best with 14 strikeouts in eight dominant innings, Bryce Harper hit two homers and the Washington Nationals beat the Philadelphia Phillies 4-0 on Tuesday night.

Strasburg (9-7) allowed only a single to Cody Asche leading off the bottom of the fifth – a hard grounder to right field. He has 27 strikeouts in his last two starts.

“I trust my instincts, go out there and battle,” Strasburg said. “I don’t worry about what the stuff is doing. I want to go out there and compete.”

Strasburg struck out the side twice and fanned eight of his last 12 batters. He was still firing 96 mph fastballs in the eighth. Blake Treinen tossed a 1-2-3 ninth to complete the shutout.

Strasburg struck out 14 one other time, in his major league debut against Pittsburgh on June 8, 2010. He had 13 in 71/3 innings in a loss to the Mets last Wednesday. This was his longest outing since he went eight innings in a win over Arizona on Aug. 19, 2014. Strasburg has one complete game and shutout in his career. It was against the Phillies on Aug. 11, 2013.

CUBS, PIRATES SPLIT: Jon Lester limited Pittsburgh to five hits while picking up his first complete game of the season and visiting Chicago earned a doubleheader split with a 2-1 win.

The Pirates took the first game 5-4 when Pedro Florimon scored on Starling Marte’s sacrifice fly in the eighth, but they couldn’t complete the sweep.

Lester (10-10) walked one and struck out nine while picking up his 12th career complete game.

MARLINS 9, METS 3: Jacob deGrom was hit hard during a rare dud at home against one of his favorite opponents, and Miami stopped New York’s eight-game winning streak.

Mets nemesis Dee Gordon homered and had four hits to back Tom Koehler, who plunked Yoenis Cespedes in the first inning and then helped silence the streaking slugger the rest of the way.

New York’s commanding lead in the NL East was trimmed to 81/2 games over Washington. The magic number remained 10 for the Mets to clinch their sixth division title.

CARDINALS 3, BREWERS 1: Jason Heyward hit a line drive two-run homer in the 10th inning to lead St. Louis at Milwaukee.

AMERICAN LEAGUE

ROYALS 2, INDIANS 0: Kris Medlen pitched five-hit ball over 61/3 innings and Alex Rios hit a home run, leading Kansas City to a win at Cleveland.

Medlen (4-1) stifled the Indians before Royals Manager Ned Yost turned things over to his top-ranked bullpen.

TIGERS 5, TWINS 4: Victor Martinez had three hits and two RBI in visiting Detroit’s win.

ATHLETICS 17, WHITE SOX 6: Josh Reddick homered and drove in four runs during a 10-run fourth inning to power visiting Oakland.

RAYS 6, YANKEES 3: Nick Franklin hit a go-ahead two-run homer in the sixth inning and Tampa Bay beat visiting New York.

Alex Rodriguez and Greg Bird homered for the Yankees, who remain three games behind AL East-leading Toronto.

INTERLEAGUE

BRAVES 3, BLUE JAYS 2: Andrelton Simmons’ tie-breaking RBI single in the ninth inning snapped a 12-game home losing streak for Atlanta.

The Braves ended the longest home skid in franchise history. They began the game 14-46 overall since July 8.