Member 14603662 Ответов: 3

Совпадение кредитной карты с номером + истекает и CVV


Привет я хочу код в регулярном выражении или vb.net это совпадение кредитной карты с номером+истекает+CVV в одной строке регулярного выражения, что я сделал

выражение \D{4}-?\д{4}-?\д{4}-?\д{4}

совпадение номеров кредитных карт
(0[1-9]|1[0-2])\/?([0-9]{4}|[0-9]{2})

ИСТЕКАЕТ МАТЧ
[0-9]{3}$

CVV МАТЧ
Мне нужен матч по кредитной карте только в том случае, если матч такой

(!chk) начальное слово (n) номер кредитной карты (M) месяц (y) год (X) cvv

!ЧК nnnnnnnnnnnnnnn ммгг ХХХ
или

!ЧК нннннннннннннн мм|гг ХХХ
или

!ЧК нннннннннннннн мм/гг ХХХ
или

!ЧК нннннннннннннн мм\гг ХХХ
или

!ЧК nnnnnnnnnnnnnnn mmyyyy ХХХ
регулярное выражение

Что я уже пробовал:

\d{4}-?\d{4}-?\d{4}-?\d{4}

     credit card number MATCH
(0[1-9]|1[0-2])\/?([0-9]{4}|[0-9]{2})

     EXPIRE MATCH
[0-9]{3}$

3 Ответов

Рейтинг:
26

MadMyche

Использование регулярных выражений для кредитных карт в лучшем случае рудиментарно; вам лучше проверить, с чем вы на самом деле работаете

Сами номера кредитных карт обычно имеют длину не менее 16 цифр; основным исключением является American Express, который использует 15 цифр.

Номера CVV имеют длину 3 цифры для большинства; и опять же, American Express-это выброс с 4 цифрами.

Даты состоят из 2х2 цифр.

Теперь для проверки....
Идентифицируйте предъявляемую карту-
Это карта, которую примет ваш бизнес?
Это правильная длина?
Проходит ли он проверку алгоритма Луна.

CVV-код нужен только, чтобы соответствовать правильной длины, которая зависит от определения типа карты

Срок годности должен быть действительным месяцем и датой, и он должен быть в будущем


Рейтинг:
2

Patrice T

Цитата:
мне нужен код в регулярном выражении или vb.net это соответствует кредитной карте с номером+истекает срок действия+CVV в одной строке регулярного выражения

А как насчет того, чтобы соединить эти 3 части вместе с промежутком между ними?
\d{4}-?\d{4}-?\d{4}-?\d{4}\s(0[1-9]|1[0-2])\/?([0-9]{4}|[0-9]{2})\s[0-9]{3}$


Всего лишь несколько интересных ссылок, которые помогут построить и отладить регулярное выражение.
Вот ссылка на документацию по регулярным выражениям:
perlre - perldoc.perl.org[^]
Вот ссылки на инструменты, помогающие создавать регулярные выражения и отлаживать их:
.Объем тестер регулярное выражение - регулярное выражение шторм[^]
Регулярное Средство Выражения Эспрессо [^]
RegExr: Learn, Build, & Test RegEx[^]
Онлайн-тестер регулярных выражений и отладчик: PHP, PCRE, Python, Golang и JavaScript[^]
Этот пример показывает вам регулярное выражение в виде красивого графика, который действительно полезен для понимания того, что делает регулярное выражение: Debuggex: онлайн-тестер визуальных регулярных выражений. JavaScript, Python и PCRE.[^]
Этот сайт также показывает регулярное выражение в красивом графике, но не может проверить, что соответствует регулярному выражению: Regexper[^]


Рейтинг:
0

Richard MacCutchan

Кредитная карта это просто 12 16 цифр. &ЛТ;- к сожалению, не 12, а 16
Мм это что то вроде (0[1-9]|1[012]) - то есть 01-09 или 10-12
YY-это 2 цифры, но вам может потребоваться ограничить их диапазон.
CVV-это 3 цифры


Member 14603662

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

Richard MacCutchan

- Сложите их вместе, и что вы получите?"

Видеть RegExr: Learn, Build, & Test RegEx[^] где вы можете это проверить.