Я пытаюсь написать регулярное выражение для проверки десятичного числа.
- Число ДОЛЖНО содержать десятичную точку.
- Справа от десятичной точки должна быть одна цифра [0-9].
- Может быть не более 5 цифр слева от десятичной точки, но они не могут начинаться с нуля, если только сам по себе ноль.
Разрешено:
- 0,1 (первая цифра может быть только нулем, если за ней следует десятичное место)
- 10345.0 (не более 5 цифр слева от десятичного знака, справа от десятичного знака должна быть 1 цифра)
Не допускается:
- 0 (без десятичного знака)
- 10 (без десятичного знака)
-
- (номер справа от десятичного знака отсутствует)
- . (без цифр по обе стороны от десятичного знака)
- .1 (номер слева от десятичного знака отсутствует)
Это регулярное выражение проверяет, что стоит перед десятичным знаком
^(?:[1-9][0-9]{0,4}|0)$
Это регулярное выражение проверяет, что следует за десятичным знаком
^[0-9]{1}+$
Я просто не знаю, как объединить два так, чтобы десятичный знак был обязательным.
Как мне решить эту проблему?