There are two factors to consider when deciding how to handle the problem of a work sample: sample size and population characteristics. Sample size is determined by a formula based on the power of the sample or its ability to represent the population with a predictable margin of error.
The resulting complexity makes card type detection code difficult to write, read, and maintain. As an example of this complexity, consider this JavaScript regular expression used to detect Discover card numbers starting with 6011, 622126-622925, 644-649, and 65:
Card issuers refer to the leading six digits on the card as an issuer identification number (IIN), or sometimes referred to as bank identification number (BIN). On rare occasions they are referred to as bank card numbers. The remaining numbers on the card are referred to as the primary account number or PAN. IINs and PANS have a certain level of internal structure and share a common numbering scheme. Bank card numbers are allocated in accordance with ISO/IEC 7812.