Skip to content

Instantly share code, notes, and snippets.

@michaelkeevildown
Last active September 15, 2024 07:01
Show Gist options
  • Save michaelkeevildown/9096cd3aac9029c4e6e05588448a8841 to your computer and use it in GitHub Desktop.
Save michaelkeevildown/9096cd3aac9029c4e6e05588448a8841 to your computer and use it in GitHub Desktop.
Credit Card Regex Patterns

Credit Card Regex

  • 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})$
@exadeci
Copy link

exadeci commented May 13, 2019

Maestro Card: ^(5018|5020|5038|6304|6759|6761|6763)[0-9]{8,15}$

5893 and 6762 were missing:
Maestro Card: ^(5018|5020|5038|5893|6304|6759|6761|6762|6763)[0-9]{8,15}$

@KyorCode
Copy link

KyorCode commented Dec 2, 2019

A bit out of date according to : https://en.wikipedia.org/wiki/Payment_card_number

@doggonewater672
Copy link

Depending where you want to use it, this may cover all of the above:
\b\d{13,16}\b

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment