- Amex Card:
^3[47][0-9]{13}$
- BCGlobal:
^(6541|6556)[0-9]{12}$
- Carte Blanche Card:
^389[0-9]{11}$
- Diners Club Card:
^3(?:0[0-5]|[68][0-9])[0-9]{11}$
- Discover Card:
^65[4-9][0-9]{13}|64[4-9][0-9]{13}|6011[0-9]{12}|(622(?:12[6-9]|1[3-9][0-9]|[2-8][0-9][0-9]|9[01][0-9]|92[0-5])[0-9]{10})$
- Insta Payment Card:
^63[7-9][0-9]{13}$
- JCB Card:
^(?:2131|1800|35\d{3})\d{11}$
- KoreanLocalCard:
^9[0-9]{15}$
- Laser Card:
^(6304|6706|6709|6771)[0-9]{12,15}$
- Maestro Card:
^(5018|5020|5038|5893|6304|6759|6761|6762|6763)[0-9]{8,15}$
- Mastercard:
^5[1-5][0-9]{14}$
- Solo Card:
^(6334|6767)[0-9]{12}|(6334|6767)[0-9]{14}|(6334|6767)[0-9]{15}$
- Switch Card:
^(4903|4905|4911|4936|6333|6759)[0-9]{12}|(4903|4905|4911|4936|6333|6759)[0-9]{14}|(4903|4905|4911|4936|6333|6759)[0-9]{15}|564182[0-9]{10}|564182[0-9]{12}|564182[0-9]{13}|633110[0-9]{10}|633110[0-9]{12}|633110[0-9]{13}$
- Union Pay Card:
^(62[0-9]{14,17})$
- Visa Card:
^4[0-9]{12}(?:[0-9]{3})?$
- Visa Master Card:
^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14})$
Last active
January 12, 2025 21:48
-
-
Save michaelkeevildown/9096cd3aac9029c4e6e05588448a8841 to your computer and use it in GitHub Desktop.
Credit Card Regex Patterns
A bit out of date according to : https://en.wikipedia.org/wiki/Payment_card_number
Depending where you want to use it, this may cover all of the above:
\b\d{13,16}\b
This can be effectively used in the development of payment systems. This will allow you to immediately filter out incorrectly entered data as soon as it is entered. I am currently working with the https://qbetscasino.nl/ project and I need to improve the quality of the entered data and reduce the number of errors. In addition, such solutions can be useful for verifying transactions in real time. Thank you for your structured and practical approach.
A bit out of date according to : https://en.wikipedia.org/wiki/Payment_card_number
Thanks for that
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
5893 and 6762 were missing:
Maestro Card:
^(5018|5020|5038|5893|6304|6759|6761|6762|6763)[0-9]{8,15}$