Doing this kind of validation with a regexp is not the simplest way. Usually, you convert the string to its numerical value and compare to the bounds of the allowed range.
If you really want a regexp, you need to:
- accept the optional sign character, followed by
- the digit 1 followed by the digit 2 followed by an optional . followed by any number of 0
- or a single digit or the pair 10 or the pair 11 followed by an optional . followed by any digit(s)