Я пытаюсь проверить ввод с помощью regEx в Vue, который я понятия не имею, как его сделать, и не могу найти в Интернете, как сопоставить то, что я хочу сделать.
Дело в том, что я пытаюсь проверить цену, которая должна быть числом с плавающей запятой с двумя десятичными числами, и это может быть 1 число перед . или 9 цифр. Например:
0.50
1.00
99999.99
999999999.00
Я пробовал это:
v => (/\d{1,3}(?:[.,]\d{3})*(?:[.,]\d{2})/.test(v))
Но не работает.
Извините, если мой английский не очень хорош. Я ценю помощь!
ИМХО в этом вопросе нет ничего неясного.
@Thefourthbird Возможно. Может быть, вы хотели бы улучшить название?
Что ты хочешь? Проверить значение на совпадение числа от 0 до 999999999 в целой части и не более 2-х цифр после "."?
Шаблон, предполагающий, что вся проверяемая строка от начала (^) до конца ($) состоит из
Обязательная начальная часть, которая либо равна 0, либо содержит от 1 до 9 цифр и не начинается с «0»;
Необязательное окончание "." и две цифры:
^([1-9]\d{0,8}|0)(.\d{1,2})?$
Чтобы сопоставить 1-9 цифр до точки и 2 десятичных числа:
^\d{1,9}\.\d{1,2}$
Посмотрите демоверсию regex101.
Не работает каким образом? В вопросе отсутствует stackoverflow.com/help/mcve . Регулярное выражение, скорее всего, будет соответствовать, но оно ошибочно и допускает нечисловой ввод.