2016-01-05 2 views
0

Это то, что я до сих пор:Разрешить только номера 0-168, включая десятичные до двух мест

/^(1[0-6][0-8]|1[0-5][0-9]|1[01][0-9]|[1-9]?[0-9])$/ 

Это регулярное выражение позволяет только номера 0-168 но не допускает каких-либо знаков после запятой, т.е. 1.5 или 12.56 или 167.99 ,

+0

, что вы хотите достичь, и почему бы вам не работать с Number вместо этого? – smnbbrv

+0

Дико близко к этому вопросу http://stackoverflow.com/questions/9800120/regular-expression-range-with-decimal-0-1-7-0 –

+0

Почему регулярное выражение? 'if (var> = 0 и var <= 167.99)' – chris85

ответ

1
^(?:\d\d?|1[0-5]\d|16[0-7])(?:\.\d\d?)?$ 

Это соответствует число от 0 до 168, за исключением 168 сам.

Если вы хотите добавить, просто

|^168(?:\.00?)?$ 
Смежные вопросы