{0,4}
означает «от 0 до 4 последовательности действий». +
означает «один или несколько исходящих шаблонов», а .
означает «любой символ».
Похоже, вам нужно сбросить +
(у вас уже есть счет, указанный в {0,4}
) и экранировать .
, чтобы соответствовать буквальной десятичной точке.
^[0-9]{0,4}(\.[0-9]{0,2})?$
- 10,20 совпадений
- 1234,23 совпадений
- 123456.23 нет совпадений
- 1234.23456 нет совпадений
Имейте в виду, что это не универсально приемлемый метод проверки десятичных знаков. Различные регионы используют разные символы для десятичной точки, например.