Регулярное выражение для принятия заглавной буквы должно принимать вместо числа - PullRequest
0 голосов
/ 25 октября 2018

У меня есть регулярное выражение, которое должно принимать число в окончательной позиции M, но вместо этого у моего клиента есть буква (заглавная M).

CNTCST79L20H50 M G

Регулярное выражение:

^[A-Za-z]{6}[0-9]{2}[A-Za-z]{1}[0-9]{2}[A-Za-z]{1}[0-9]{3}[A-Za-z]{1}$

Как я могу изменить регулярное выражение, чтобы оно принимало CNTCST79L20H50 M G, вместо того, чтобы требовать число?

равно

^[A-Za-z]{6}[0-9]{2}[A-Za-z]{1}[0-9]{2}[A-Za-z]{1}[0-9]{2}[A-Za-z]{2}$

исправить как регулярное выражение для кода

CNTCST79L20H50MG?

Редактировать:

NOTE К сожалению, последнее регулярное выражение должно принимать оба случая.

1 Ответ

0 голосов
/ 25 октября 2018

Да, это правильно.Вы можете видеть, что он работает здесь: https://regex101.com/r/rHBFnA/1

Обновлено для вашего обновления:)

Вы можете указывать как буквы, так и цифры в классе символов:

^[A-Za-z]{6}[0-9]{2}[A-Za-z]{1}[0-9]{2}[A-Za-z]{1}[0-9]{2}[A-Za-z0-9][A-Za-z]$

Тосоответствует обоим:

CNTCST79L20H50MG
CNTCST79L20H505G

Но не это:

CNTCST79L20H5057

https://regex101.com/r/rHBFnA/4

...