Skip to content

Instantly share code, notes, and snippets.

@Orbis25
Created December 13, 2025 21:43
Show Gist options
  • Select an option

  • Save Orbis25/9c9800b706110348ef96537a0199c3ca to your computer and use it in GitHub Desktop.

Select an option

Save Orbis25/9c9800b706110348ef96537a0199c3ca to your computer and use it in GitHub Desktop.
namespace Parking.Application.Core.Helpers;
public static class CardTypeHelper
{
public static string GetCardType(string? cardNumber)
{
cardNumber = cardNumber?.Replace(" ", "").Replace("-", "");
if (string.IsNullOrEmpty(cardNumber))
return "Unknown";
if (Regex.IsMatch(cardNumber, @"^4[0-9]{12}(?:[0-9]{3})?$"))
return "Visa";
if (Regex.IsMatch(cardNumber, @"^5[1-5][0-9]{14}$") ||
Regex.IsMatch(cardNumber, @"^2(2[2-9][0-9]{2}|[3-6][0-9]{3}|7[01][0-9]{2}|7200)[0-9]{10}$"))
return "MasterCard";
if (Regex.IsMatch(cardNumber, @"^3[47][0-9]{13}$"))
return "AmericanExpress";
if (Regex.IsMatch(cardNumber, @"^6(?:011|5[0-9]{2})[0-9]{12}$"))
return "Discover";
return "Unknown";
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment