Проблема с Regex для проверки на streetNumber - PullRequest
0 голосов
/ 08 апреля 2019

Мне нужно подтвердить streetNumber. Длина должна быть не более 4, первые 3 должны быть числом, а последняя может быть буквой (специальные символы не допускаются). Письмо не является обязательным. Пример 2, 34А, 45, 101 или 121В - все возможные числа. У меня есть это регулярное выражение, но оно не работает для меня. Может ли кто-нибудь помочь мне.

^[1-9]|[A-Za-z]{1,4}

Я ожидаю, что 2, 34A, 45, 101 или 121B все пройдут проверку на регулярное выражение

Ответы [ 2 ]

3 голосов
/ 08 апреля 2019

^[1-9]\d{0,2}[A-Za-z]?$

Пояснение:

  • [1-9] цифра от 1 до 9.
  • \d{0,2} ноль или более (до 2) цифр.
  • [A-Za-z]? буква (необязательно)

https://regexr.com/4br78

В случае, если вы хотите разрешить 4-значные цифры:
^[1-9]\d{0,2}[A-Za-z\d]?$

1 голос
/ 08 апреля 2019

Просто используйте ^[1-9]\d{0,2}[A-Z]?$

Пояснение:

^ - начало строки

[1-9] - совпадение с 1 по 9

\d{0,2} - сопоставить ноль с двумя цифрами

[A-Z]? - соответствует нулю или одной букве

$ - конец строки

Демо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...