В приложении Angular 7, как я могу изменить этот ввод маски, чтобы разрешить использовать знак «-» или цифру в качестве первого символа, а все остальные символы в качестве цифр? - PullRequest
0 голосов
/ 20 сентября 2019

В моем приложении angular 7 у меня есть метод, который маскирует пользовательский ввод.В настоящее время это не позволит пользователю вводить любое значение, кроме цифр.Мне нужно, чтобы пользователь мог ввести «-» или цифру в качестве первого символа, а все остальные символы должны быть цифрами.

  maskInputAmount(e) {
    const t = e.target.value.replace(/\D/g, '').match(/(\d{0,3})(\d{0,3})(\d{0,3})/);
    e.target.value = t[2] ? t[1] + t[2] + (t[3] ? + t[3] : '') : t[1];
  }

Я иду в середине этого проекта, там3 группы захвата в этом валидаторе.Это не обязательно, ранее они хотели запятые каждые 3 символа, но с тех пор сняли это требование.

Максимальное количество символов: 7, если значение положительное (9999999), и 8 цифр, если значение отрицательное (-9999999).

1 Ответ

0 голосов
/ 20 сентября 2019

если вы префикс вашего регулярного выражения с необязательным дефисом таким образом

/-?(\d{0,3})(\d{0,3})(\d{0,3})/

не, что решить ваш запрос?

...