ST. LOUIS (AP) -- St. Louis Cardinals hitters keep reminding themselves that there's a long, long way to go.
These days, they're not putting anything together.
"Obviously, it's been a little bit slow lately," Allen Craig said after a 6-1 loss to the Pittsburgh Pirates on Saturday. "I think that we're going to stay optimistic and keep grinding out at-bats.
"It's the first month of the season. Things are going to improve."
The Cardinals have mustered five runs their last four games, losing three of them. They were held to three hits the last seven innings by the Pirates bullpen after Francisco Liriano left with flu-like symptoms and dizziness, and were 1 for 11 overall with runners in scoring position.
"We couldn't get the big hit when we had the opportunity," said leadoff man Matt Carpenter, who was 0 for 3 with two walks. "It's just the way it's going right now. When you're not getting results, it's tough to swallow sometimes, but I think we're close to getting out of this."
Gaby Sanchez had two RBIs in a four-run fourth inning for the Pirates.
Matt Holliday had an RBI double for the Cardinals but Yadier Molina was a bust on his jersey giveaway day, striking out with the bases loaded to end the third against Stolmy Pimentel (2-0) and popping out with runners on second and third to end the fifth against Jared Hughes. He entered batting .431 during a 15-game hitting streak.
Craig is batting .174, Jhonny Peralta .175, Peter Bourjos .163, Mark Ellis .100. Carpenter had 55 doubles last season and has none this season.
"It's frustrating for everybody," manager Mike Matheny said. "Right now guys are just searching to find it, and a few guys are feeling good. It comes down to taking a consistent approach."
Andrew McCutchen and Jose Tabata each added an RBI off Tyler Lyons (0-2) in the fourth, with the first four runners reaching safely after the lefty opened with three perfect innings. Tabata totaled three hits and is a career .345 hitter at Busch Stadium.
"You see Liriano leave the game and all of a sudden we've got guys all over the bases and it looks like this might be our spot and it doesn't happen," Matheny said. "Those big hits in big situations aren't easy to come by. We made it look easy, I think, last year and I think our guys grew to expect it to happen, and I think they still do.
"We're going to have to believe it before we see it."
The Pirates have scored seven runs while Liriano was in the game in his six starts. They jumped into gear the inning after the lefty was taken out en route to just their third win in their last 10 games.
"That one inning obviously changes the whole day," Lyons said. "The one inning, that's a killer."
The Pirates have also struggled offensively, totaling four runs in a four-game losing streak.
Liriano walked Lyons to start the third and was behind 3-0 against leadoff man Matt Carpenter before meeting with a trainer on the mound, and then departing.
Tony Sanchez added a two-run single in the ninth off Eric Fornatoro after striking out his first three at-bats.
NOTES: Cardinals ace Adam Wainwright (4-1, 1.46) is set to work the finale against Edinson Volquez (1-1, 1.93) after tweaking his right knee in his last start. ... St. Louis first baseman Matt Adams made an outstanding diving catch to rob Pimentel of an opposite-field line drive hit in the fifth. ... Jhonny Peralta hit his 300th career double off Justin Wilson in the seventh. ... Craig singled in four trips and is 1 for 18 against the Pirates this year.