Регулярное выражение соответствует символам с одинаковым символом в данной строке - PullRequest
0 голосов
/ 16 апреля 2020

Я работаю над проверкой номеров пан-карт. Мне нужно проверить, чтобы первый символ и пятый символ были одинаковыми при проверке карты панорамы. Каким бы ни был первый символ в приведенной ниже строке, он должен совпадать с пятым символом. Может ли кто-нибудь помочь мне в применении вышеуказанного условия?

Регулярное выражение, которое я пробовал: [A-Za-z] {4} \ d {4} [A-Za-z] {1}

Вот мой пример карты панорамирования: ABCDA9999K

1 Ответ

2 голосов
/ 16 апреля 2020

Если вы хотите сопоставить полную строку примера, где первая буква А должна совпадать с пятой буквой А, шаблон должен соответствовать 5 вхождениям [A-Za-z]{5} вместо [A-Za-z]{4}

. Вы можете использовать захват группа с обратной ссылкой ([A-Za-z])[A-Za-z]{3}\1 для учета первых 5 символов.

Вы можете добавить границы слов \b в начало и конец, чтобы предотвратить частичное совпадение, или добавить якоря для подтверждения начала ^ и конец $ строки.

Эта часть шаблона {1} может быть опущена.

([A-Za-z])[A-Za-z]{3}\1\d{4}[A-Za-z]

Regex demo

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