AngularJS: создайте регулярное выражение для первых двух символов строкового алфавита, а остальные должны быть числовыми - PullRequest
0 голосов
/ 23 апреля 2019

Никогда в действительности не использовал AngularJS, и у меня возникают проблемы с выяснением, как создать регулярное выражение для ввода, чтобы проверять / разрешать только первые 2 символа быть буквами и остальными числами.

Надеюсь, это имеет смысл.

Использование pugJS

.e-field
    label.e-field__label(for='invoiceNr') Invoice Number
    input#invoiceNumberInput.e-input(
      ng-model='$ctrl.invoiceNumber'
      name="invoiceNumber"
      ng-required="true"

invoiceNr пример: HN123123123

Ответом был нг-паттерн. Вот что я использовал:

ng-pattern="/^[a-zA-Z]{2}[0-9]{6,}$/"

Ответы [ 2 ]

0 голосов
/ 23 апреля 2019

Не уверен насчет интеграции в Angular.Однако, как RegEx, я думаю, вы могли бы использовать это:

^[a-zA-Z]{2}[0-9]+$

(см. Тест здесь )

... Просто быстрый комментарий относительно использования ..[0-9]+$ в отличие от ...[0-9]*$

Я думаю, вы должны использовать +, а не *.В противном случае строка типа «HN» также будет проверять, но я понял, что вы хотите проверить, только если она имеет цифры после букв (например, «HN1» или «HN123» ..).Для этого случая вы должны использовать «+».

0 голосов
/ 23 апреля 2019

Regex для первых 2 символов - это число, а остальные цифры на входе angularJS, как показано ниже. Используйте ng-pattern и указанный RegEX

ng-pattern="/^[a-zA-Z]{2}[0-9]*$/"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...