Я разрешаю пользователю вводить размеры поля через поля формы. допустимые значения:
- целых положительных чисел
- должно заканчиваться на px или%
Примеры допустимых чисел: 300px или 70%
Кроме того, я хочу добавить дополнительную логику проверки:
Если введенное значение в процентах, то число должно лежать в диапазоне 0> x <= 100 </p>
Если введенное число в пикселях, я хочу иметь возможность сверяться с жестко заданными минимальными и максимальными значениями.
Мое знание регулярных выражений довольно скудное, так как я не использовал его много лет.
Я думаю о написании набора вспомогательных функций, таких как:
// returns true if value ends in px or % [with no spaces], false otherwise
function is_scale_valid(value){
}
//returns 'px', '%' or undefined
function get_scale_type(value){
}
// called after is_scale_valid, to ensure we are dealing with
// a +ve integer that falls in desired range. This function
// strips away the 'scale' part of the value and only looks
// at the number
function is_valid_number(value, scaletype, valid_min, valid_max){
}
Может кто-нибудь помочь мне заполнить эти вспомогательные функции?