Ограничить input девятью цифрами до точки и двумя после точки
Добрый день, в коде не хватает условия на проверку девяти цифр до точки, подскажите пожалуйста как этого добиться в этом коде
var reg = [/^\D+/, /[^.,\d]+/g, /[\.,]+/, /([\d]*\.\d{1,2}).*$/], ch = val.replace(reg[0], '').replace(reg[1], '').replace(reg[2], '.').replace(reg[3], '$1'); return ch; спасибо |
нашел решение ))
|
Как-то нету желания разбираться, что там зашифровано, т.к. непонятно что на что и для чего меняется. Может достаточно будет дополнительную проверку всунуть:
var re = /^[0-9]{9}\.[0-9]{2}$/; if (re.test( "103456789.10" ) ) { alert("Данная строка соответствует заявленному паттерну"); }else{ alert("Данная строка НЕ соответствует заявленному паттерну"); } Это точное соответствие 9 цифр, точка 2 цифры var re = /^[0-9]{1,9}\.[0-9]{1,2}$/; не меньше одной до точки, но не больше 9-ти, точка, не меньше одной после точки, но не больше 2-х. var re = /^[0-9]{1,9}\.[0-9]{1,2}|[0-9]{1,9}$/; не меньше одной до точки, но не больше 9-ти, точка, не меньше одной после точки, но не больше 2-х ИЛИ целое число от 1 до 9-ти знаков. |
спасибо большое за отклик
|
Часовой пояс GMT +3, время: 08:24. |