FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Limpiar caracteres y dar formato a un IBAN
Buenos días,
quiero aprovechar los datos que tengo en una tabla que contiene números de cuentas bancarias. A la hora de meter esos datos se ha hecho sin prestar demasiada atención al formato y me encuentro con mucha variedad de datos. Por ejemplo hay cuentas que contienen espacios entre los números, otras con "/" y otras con "-" Me gustaría hacer una función o procedimiento a modo de filtro que sea capaz de "sanear" ese dato. Es decir que se encargue de recorrer el contenido, quitar los caracteres "/" o "-" y que devuelva un formato estándar del tipo: XX99 9999 9999 9999 9999 9999 ¿Alguien puede echarme una mano? Muchas Gracias
__________________
Mi proyecto paso a paso (Parte I) |
#2
|
||||
|
||||
Hola.
Lo que puedes hacer es usar la instrucción StringReplace para eliminar de la cadena los caracteres extraños que pueda haber, p.e.:
... y así por cada uno de los caracteres raros que creas que puede haber. Esto al final tiene que darte una cadena de 24 caracteres, si no es así tendrás que revisarla manualmente. Saludos
__________________
Be water my friend. |
#3
|
|||
|
|||
Mi propuesta es tratar la cadena ignorando todos los caracteres que no sean números devolviendo un mensaje de error si no hay 20 números exactos (longitud de una cuenta bancaria española válida) y devolviendo la cadena con 20 números en caso contrario.
Una vez tienes la cadena de 20 números que entendemos que es un número de cuenta válido (se puede comprobar el dígito de control para asegurarnos). Si lo quieres pasara a un iban español Válido toca añadilre ESXX donde xx son los dígitos de control resultantes de aplicar el algoritmo correspondiente a los 20 digitos de la cuenta mas el código del pais (ES en el caso de españa). Entiendo que el algoritmo para el cálculo de los dígitos de control ya lo tienes y que el problema se te planteaba solo a la hora de obtener un número de cuenta válido a partir de tus datos bancarios actuales. |
#4
|
||||
|
||||
Esa sería mejor opción pero siempre y cuando se tenga como premisa de que todas las cuentas corrientes son españolas y tratando entonces solamente el antiguo código de cuenta de 20 dígitos pero claro, no sabemos cómo están los datos, si con el IBAN incluido o no.
Saludos
__________________
Be water my friend. |
#5
|
|||
|
|||
Totalmente de acuerdo. Me he "columpiado" dando por hecho, sin que en la pregunta lo ponga, que se trata de recorrer una tabla con números de cuenta españoles antiguos (los de 20 caracteres) que no están formateados. Para obtener el IBAN. Pero efectivamente si en el campo puede tener un numero de cuent antiguo o un IBAN de cualquier pais ya nos podemos ir a 34 caracteres pudiendo ser los 2 primeros letras que identifiquen al pais y dependiendo el número de caracteres restantes del pais que se trate. O sea que en ese caso mi propuesta no sirve.
|
#6
|
||||
|
||||
|
#7
|
|||
|
|||
Muchas gracias a todos,
esto último suena bien pero mis conocimientos no dan para tanto... Me quedo con la opción sencilla de de newtron
Con esto saneo todas las cuentas y me quedo con los 24 caracteres que necesito. Quiero dar un paso más si es posible. El resultado es por ejemplo. ES9999999999999999999999 ¿Como podría hacer para hacer grupos de 4 caracteres separados por un espacio en blanco? Sería para obtener ES99 9999 9999 9999 9999 9999
__________________
Mi proyecto paso a paso (Parte I) |
#8
|
||||
|
||||
Por supuesto, hay formas más eficientes de hacerlo, pero como idea vale Saludos |
#9
|
|||
|
|||
Muchas gracias, así da gusto
He añadido los + que faltan porque me daba error pero una vez puestos todo OK Ahora que ya tengo el formato deseado quiero rizar el rizo, jejejej Abro otro hilo para no mezclar preguntas diferentes. Gracias de nuevo a todos por vuestra ayuda.
__________________
Mi proyecto paso a paso (Parte I) |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Cálculo de los dígitos IBAN | Troffed | Trucos | 9 | 26-07-2020 18:08:27 |
Cálculo / Validación del IBAN | Angel.Matilla | C++ Builder | 17 | 05-02-2014 13:12:29 |
Dar formato a una cadena con vocales tildadas y otros caracteres | noob | Varios | 8 | 25-02-2009 17:15:09 |
Como leer un Email en formato HTLM y que se muestren las imagenes y todo su formato | jesus02018 | Internet | 0 | 28-12-2008 11:22:10 |
Como calcular codigo IBAN | cinecito | Varios | 2 | 11-05-2004 18:49:44 |
|