Device number issue

The device number could be in the same string as the card number.
 
Ex: "card 1: U0x46d0x802 [USB Device 0x46d:0x802], device 0: USB Audio [USB Audio]"

So awk returns the same string and {print $2} returns the same number as 

awk '/^card [0-9]/ {print $2}'

grep -o returns the device number properly.