Qual è il modo corretto per verificare una carta di credito con un'espressione regolare? Se quale usare ci sono tonnellate online. Se non come verificare?Verifica della carta di credito con regex?
risposta
How can I use credit card numbers containing spaces? copre tutto ciò di cui si ha bisogno.
- Edit:
Infatti, io Parzialmente in disaccordo con me stesso e sono d'accordo con Cletus. Convalidare il più possibile (senza entrare nei dettagli di specifici tipi di carte di credito [IMHO]) prima di inviarlo. Ed è ovvio (si spera) che questa convalida debba essere eseguita in JavaScript, per renderlo veloce, quindi sul server, per ricontrollare (e per JavaScript disabilitato).
- risposta precedente:
Non preoccupatevi; lascia che sia il provider a verificarlo quando si tenta effettivamente il pagamento. Nessun motivo legittimo per provare a verificarlo da solo. Puoi usare lo this, se proprio ne hai voglia.
Penso che stiate cercando lo Luhn Algorithm. È una semplice formula di checksum utilizzata per convalidare una varietà di numeri di identificazione.
Ciò dipende dall'accuratezza della pre-convalida. Per convalidare tutto ciò che è possibile, è necessario calcolare quale dovrebbe essere l'ultima cifra della carta e confrontarla con quella immessa, che una RegEx non può fare.
Per l'algoritmo e altri dettagli si veda this link, che fornisce anche un elenco di prefissi comuni che si potrebbe convalidare contro.
Vedi questo link Finding or Verifying Credit Card Numbers con i clienti abituali espressioni
- Visa:^4 [0-9] {12} (:? [0-9] {3})? $ Numeri di carta Visa Tutti Iniziamo con una 4. Le nuove carte hanno 16 cifre. Le vecchie carte hanno 13.
- MasterCard:^5 [1-5] [0-9] {14} $ Tutti i numeri MasterCard iniziano con i numeri da 51 a 55. Tutti hanno 16 cifre.
- American Express:^3 [47] [0-9] {13} $ I numeri delle carte American Express iniziano con 34 o 37 e hanno 15 cifre.
- Diners Club:^3 (?: 0 [0-5] | [68] [0-9]) [0-9] {11} $ I numeri delle carte Diners Club iniziano da 300 a 305, 36 o 38. Tutti hanno 14 cifre. Ci sono le carte Diners Club che iniziano con 5 e hanno 16 cifre. Queste sono una joint venture tra Diners Club e MasterCard e dovrebbero essere elaborate come una MasterCard.
- Scoprire:^6 (?: 011 | 5 [0-9] {2}) [0-9] {12} $ I numeri delle carte Discover iniziano con 6011 o 65. Tutti hanno 16 cifre.
- JCB:^(?: 2131 | 1800 | 35 \ d {3}) \ d {11} $ Le carte JCB che iniziano con 2131 o 1800 hanno 15 cifre. Le carte JCB che iniziano con 35 hanno 16 cifre.
Ciao.
Le schede Discover hanno aggiunto nuovi intervalli, ecco una espressione regolare aggiornata per le schede Discover '^ 6 (?: 0110 [0-9] | 011 [2-4] [0-9] | 01174 | 0117 [7-9 ] | 0118 [6-9] | 0119 [0-9] | 4 [4-9] [0-9] {3} | 5 [0-9] {4}) [0-9] {10} $ ' – realgt
come su China UNion Pay? –
- 1. Test numero di carta di credito Regex
- 2. Pagamenti con carta di credito nell'app
- 3. Nome della banca dai dettagli della carta di credito?
- 4. Data di scadenza della carta di credito - Inclusa o esclusiva?
- 5. Input corretto Tipo di carta di credito
- 6. Memorizzazione delle informazioni sulla carta di credito
- 7. Carta di credito - Card on file services?
- 8. Dettagli carta di credito in Magento
- 9. Salvataggio delle informazioni della carta di credito nel database MySQL?
- 10. Come ottenere il saldo della carta di credito?
- 11. Soluzioni di pagamento con carta di credito per applicazioni desktop
- 12. Accettare pagamento con carta di credito nell'app per iPhone
- 13. Cuffie Telefono Jack Carta di credito Scorri con Browser App
- 14. Come ricevere i pagamenti con carta di credito?
- 15. Yii php Integrazione pagamento con carta di credito Paypal
- 16. Impossibile registrare carta di credito con Microsoft Windows Azure
- 17. Come effettuare pagamenti con carta di credito in Django?
- 18. Integrazione Paypal per accettare pagamenti con carta di credito direttamente
- 19. Dettagli carta di credito sandbox PayPal non funzionanti
- 20. alternativa a memorizzare informazioni di carta di credito
- 21. PayPal Checkout - scheda di carta di credito per default
- 22. Best practice per l'acquisizione e l'archiviazione delle informazioni della carta di credito con PHP
- 23. Formato numeri di telefono e carta di credito in AngularJS
- 24. Come elaborare la carta di credito usando l'intuit (quickbook)?
- 25. Ingresso carta di credito spunta da banda magnetica
- 26. ASP.NET MVC - Archiviazione temporanea sicura dei dati della carta di credito
- 27. Forzare PayPal per richiedere sempre i dati della carta di credito invece del modulo di accesso?
- 28. Non è stato attivato il riempimento automatico della carta di credito di Chrome
- 29. Anno massimo per la data di scadenza della carta di credito
- 30. La casella di testo non mostra il normale rilevamento della carta di credito Google Chrome
Potrebbe non essere più d'accordo. I gateway di pagamento richiedono tempo. Dovresti fare tutto il possibile per assicurarti che sia valido prima di provare a usarlo. – cletus
cletus: quindi esegui un controllo rapido usando il sistema Luhn, e ovviamente assicurati che tutti i dati richiesti ti vengano inviati prima di inviarlo. –