^\d+(?:\.\d+){0,2}$
Это начнется с цифры (\d
совпадает с [0-9]
) и затем с нуля или более десятичной точки, за которой следуют дополнительные числа.
var input = [
"1.0", // pass
"1.0.0", // pass
"1.0.0.0", // fail
"a.0", // fail
"1", // pass
"1.",
"1.a"
]
var regex = /^\d+(?:\.\d+){0,2}$/;
input.forEach(function(item) {
console.log(item, regex.test(item));
});
Если вы хотите ограничить количество цифр, вы можете изменить \d+
на \d{n,m}
(замените n
на минимальное количество цифр и m
с максимальным количеством цифр).
+
совпадает с {1,}
, что означает «один или несколько».