2009-11-24 326 views
6

Necesito escribir una expresión regular para verificar el formato válido de número de cuenta bancaria de los principales bancos en EE. UU. Y Canadá (ya conozco el formato para número de tránsito y institución, pero no conozco el formato para el número de cuenta). ¿Alguien sabe qué control de expresión regular debería ser? Tal vez solo verifico para asegurarme de que todos los caracteres tengan dígitos.Expresión regular para número de cuenta bancaria?

Respuesta

5

EE. UU. No cumple con los estándares IBAN para números de cuenta; AFAIK no hay un estándar definitivo de los Estados Unidos para los números de cuenta, solo para los números de ruta.

2

Creo que phoebus es correcto, simplemente no hay un cumplimiento de normas garantizado en el caso de EE. UU., Por lo que una expresión regular no es tan útil como uno podría imaginar.

Los números de cuenta que cumplen con el estándar ACH (Automated Clearing House) red puede tener hasta 17 caracteres alfanuméricos - el problema no es todas las transacciones financieras son ACH. (Véase también united-states-banking-institution-account-number-regular-expression)

Según esta patent document:

Para el campo 5, que se encuentra en la posición 13-39, número de cuenta DFI implica 17 caracteres, que el ejemplo se muestra como permitir cualquier forma alfanumérica.

Página 25 de State of California Tax Francise Board EFT Program Guide está de acuerdo con lo anterior.

 

Así, por lo menos a comprobar el cumplimiento formato ACH, la verificación de 1 a 17 caracteres alfanuméricos:

^\w{1,17}$ 

 

un recurso que muestran un uso específico de el estándar ACH:
http://ribbs.usps.gov/ncsc_ach_pay_instruct/documents/tech_guides/Memphis_NCSC_ACH_Credit_Payment_Option.pdf

1

No hay un estándar de los Estados Unidos para los números de cuenta bancaria. Sin embargo, NACHA proporciona un specification para transacciones ACH que establece para un campo de número de ejemplo de cuenta (DFI número de cuenta):

más a la izquierda 17 caracteres se insertan en el campo Número de cuenta DFI y los caracteres restantes truncado. ... Si hay menos de 17 caracteres, justifique y deje en blanco los espacios no utilizados.

El campo DFI Número de cuenta como parte de la CCD Entry Detail se indica como 'alphameric' (ASCII los valores superiores a 0x1F).

Aquí está la expresión regular que se me ocurrió. No coincide con el rango completo de ASCII, pero creo que manejará la mayoría de los números de cuenta. (17 caracteres compuestos por palabra, -, alfanumérico, encabezado, derecho, espacio, si, guión, presente, no, consecutivo, y, no, fin)

^(?<DFIAccountNumber>(?=[\w\- ]{17})[0-9A-Za-z](\-?\w+)*[ ]*) 
Cuestiones relacionadas