Carlos Villanueva pitched four scoreless innings of relief for injured starter Chris Capuano, helping the Milwaukee Brewers complete a sweep of the dazed St. Louis Cardinals with a 4-0 victory on Wednesday.
With three consecutive wins over the World Series champions, who still seem to be reeling after the death of reliever Josh Hancock, Milwaukee has won nine of 11 overall and has the best record in Major League Baseball at 18-9.
Prince Fielder hit a two-run single off Anthony Reyes (0-5) for the Brewers, who finished their first home sweep of St. Louis since taking four games in April 2002.
St. Louis has lost five in a row.
The Brewers won despite getting only three innings from Capuano, who took a sharp comebacker from Aaron Miles off his right calf in the second and pitched one more inning before he was taken out of the game.
Mets 6, Marlins 3
At New York, Oliver Perez struck out a season-high 10 and singled twice to start New York rallies, helping the Mets avoid a three-game sweep.
Jose Reyes scored two runs and Endy Chavez had two RBIs. Perez (3-2) went 2-for-2 at the plate with a sacrifice bunt and scored twice.
The left-hander allowed three runs -- one earned -- and three hits in 5 2-3 innings. He walked three in his 17th career double-digit strikeout game.
Cubs 8, Pirates 6 Cubs 7, Pirates 1
At Pittsburgh, Jason Marquis limited Pittsburgh to four hits over eight innings to win his fourth consecutive start and Alfonso Soriano homered for the second time in two days after not connecting all season, leading Chicago to two victories.
The Cubs first completed a game suspended by a persistent rain with Chicago ahead 6-5 in the middle of the seventh on Tuesday. Soriano led off that game with his first Cubs homer and Cliff Floyd's two-run shot off Jonah Bayliss (2-2) keyed a four-run rally just before the rain came.
Dodgers 2, Diamondbacks 1
At Los Angeles, Mark Hendrickson allowed three hits over six-plus innings and Juan Pierre hit an RBI single after a costly error by rookie center fielder Chris Young in Los Angeles' victory over Arizona.
Hendrickson (2-0) struck out seven, walked one and allowed only one runner as far as second base. The left-hander has allowed just two earned runs over 16 2-3 innings in three starts since Jason Schmidt went on the disabled list with bursitis in his shoulder.
Tsao Chin-hui (
Braves 4, Phillies 3
At Atlanta, Chipper Jones kept up his torrid hitting with a two-run double and the Atlanta bullpen shut down Philadelphia over the final four innings.
Ryan Howard hit a three-run homer in the sixth off Braves starter Chuck James to tie the game, but the Braves reclaimed the lead on Willie Harris' run-scoring single in the bottom of the sixth.
Astros 3, Reds 1
At Houston, Roy Oswalt pitched eight stellar innings and rookie Hunter Pence got his first career RBI for Houston.
Oswalt (4-2) allowed four hits and one run to help the Astros, losers of nine of their last 11 games.
The Houston ace didn't allow a hit until Adam Dunn's eighth home run in the fifth to make it 2-1. It was Dunn's third homer in three games.
Gary Sheffield went 4-for-4 with a home run and an RBI single, and Craig Monroe hit a tiebreaking homer in the sixth inning to lead the Detroit Tigers past the Baltimore Orioles 3-2 in the American League on Wednesday.



