Refer to the man page section on "Pattern Matching", otherwise known in Shell parlance as "fileglob". The [0-9] is right, but "+" doesn't work here. To match a non-zero digit followed by more digits, you need:
shopt -s nullglob
echo [1-9][0-9]*
If you can have leading zeros, but you don't want to match one with ONLY 0's, then you can do:
This last one matches : (1) any number starting with a non-zero, AND (2) any number with a non-zero in the middle, AND (3) any number ending with a non-zero.
The shopt -s nullglob ensures that if the expression does not match, you get the empty string (instead of the pattern itself).