Answer based on context:

The Raiders opened the home portion of their schedule against the New York Jets. After the teams exchanged three-and-outs on their first possessions, the Raiders moved downfield on an 81-yard drive that culminated in a Derek Carr to Michael Crabtree two-yard touchdown pass to give the Raiders an early 7-0 lead. After another Jets punt, the Raiders went 85 yards as Carr hit Crabtree from 26 yards out to extend the lead to 14-0. The Jets answered with a 75-yard drive which ended with a Jermaine Kearse 34-yard pass from Josh McCown for a touchdown, reducing the Raider lead to 14-7. The Raider offense stalled on their next two possessions as the Jets added a 46-yard field goal to narrow the lead to 14-10. With 1:50 remaining in the first half, the Raiders were forced to punt, but Jet returner Kalif Raymond muffed the punt and the Raiders recovered at the Jets four yard line. Three plays later, Oakland native Marshawn Lynch scored from two yards out, his first touchdown as a Raider, to give the Raiders the 21-10 halftime lead. The Jets began the second half with a field goal that again narrowed the lead, this time to 21-13. The Raiders, however, answered the score convincingly, scoring three touchdowns on their next three possessions as Cordarelle Patterson and Jalen Richard each scored on long rushing plays and Carr hit Crabtree again from 19 yards out after a Jets fumble to push the lead to 42-13. The Jets added a touchdown midway through the fourth period, but the Raider offense ate up the remaining time on the clock, using 8:17 to go 32 yards before a Georgio Tavecchio 29-yard field goal pushed the lead to 45-20 with 25 seconds remaining. The 45-20 win moved the Raiders to 2-0 on the season, the first time since 2002 that they had started a season 2-0. Derek Carr completed 23 of 28 passes for 230 yards and three touchdowns, all to Michael Crabtree. Crabtree caught six passes for 80 yards to go along with his three touchdowns. Marshawn Lynch only rushed for 45 yards on 12 carries, but did get a touchdown as the Raiders rushed for 180 yards in the game. The Raider defense played well again limiting the Jets to 276 yards in the game and sacking Jets QB Josh McCown four times.

How many pass attempts did Carr throw?
28