La risposta da @Rawing erroneamente assume che la gamma BIN di un numero MasterCard sarà cambiato alla nuova gamma, mentre è vero che la BIN la gamma sarà estesa dalla nuova gamma.
Pertanto per i visitatori futuri che (alla cieca) copiare l'espressione regolare si dovrebbe usare questa versione per consentire a tutti i numeri "validi" MasterCard (esclusi Luhn-check):
/^5[1-5]\d{2}-?\d{4}-?\d{4}-?\d{4}$|^2(?:2(?:2[1-9]|[3-9]\d)|[3-6]\d\d|7(?:[01]\d|20))-?\d{4}-?\d{4}-?\d{4}$/
o questa versione senza consentire trattini tra il numeri:
/^5[1-5]\d{14}$|^2(?:2(?:2[1-9]|[3-9]\d)|[3-6]\d\d|7(?:[01]\d|20))\d{12}$/
Questa è fondamentalmente una combinazione di risposta @Rawings e la domanda.
So che questo non risponde rigorosamente alla domanda, ma si spera che si evitino alcuni errori di copia-incolla nei moduli di pagamento.
Extended Demo
quali sono le possibilità a questi numeri? – rock321987
Non so perché questa domanda sia stata votata. – PamZy
Questo mi sembra molto chiaro. – Ralph