ST. LOUIS – San Marin High grad Bud Norris has been so dazzling against the St. Louis Cardinals, Albert Pujols referred to him as Chuck Norris earlier this week.

It seemed more of a compliment than slip of the tongue, especially after the 25-year-old righty kicked sand in the Cardinals’ faces once again. This time, he pitched the Houston Astros to a 4-1 win Thursday for a three-game sweep.

In 28 career innings against St. Louis, Norris is 4-0 and has allowed one earned run.

“I’ve been lucky enough to have four good starts against these guys and I just hope to keep going,” Norris said. “I know what I’m capable of when I do it right.”

As the game progressed, the Cardinals’ Ryan Ludwick thought Norris’ fastball gained a few mph.

“He’s pitched lights out every time against us,” Ludwick said. “All of a sudden it was 95 and 96 and you could see the confidence building.”

Hunter Pence hit a three-run home run for Houston, which posted its first sweep in St. Louis since taking a three-game series in April 2004. The Cardinals have lost seven of nine.

Houston’s Lance Berkman extended his streak of reaching base to nine in a row with a double and two singles before grounding out in the eighth.

“I knew I hadn’t made any outs but I didn’t give it a whole lot of thought,” Berkman said. “I knew I would make another one eventually, so I wasn’t worried about it.”

“I was hitting .190 coming in so I expected at some point I was going to get some hits,” he said.

Norris (2-4) struck out eight and walked none in eight innings. He gave up one run and six hits. Though he’s 8-7 with a 5.10 ERA lifetime, Norris his ERA against St. Louis is 0.35.

“I think it’s a very short time before we expect it from Bud all the time, with the stuff that he has,” manager Brad Mills said. “He just threw the ball great.”

Norris had lost three straight starts going into Thursday’s game, allowing 16 earned runs in 13 2-3 innings. Norris thrived under a different catcher, Humberto Quintero.