¿Cómo extraer el código postal del campo dirección?

Buenos días,

Tengo el campo "dirección" en Access, que no tiene la misma estructura y necesitaría extraer el código postal. ¿Cómo podría extraer el código postal del siguiente campo:"Avenida 303 5 DERECHA 3 2 08860 CASTELLDEFELS Barcelona"?

Muchas gracias y un saludo.

1 Respuesta

Respuesta

Para determinar el [CodPostal] de un campo de direcciones, debes tomar las características de [CodPostal], en esta caso son 5 caracteres numéricos sin espacios intermedios.
El algoritmo (pseudocodigo) seria algo así:
1.- ln = len([Direccion])
2.- lnCarNum = 1 ;     contador de caracteres numericos continuos
3.- lcCodPostal = ""
4.- lncic = 1     ; Contador de ciclo por caracteres
5.- lbOut = false    ; bandera que va a indicar fin de ciclo
6.- while ! lbOut
7.- lcLetra = substr([Direccion],lnCic,1)
8.-     si  tipo(lcLetra) = "N"  ; si es numerico incrementa contador  lnCarNum...
; esto lo puedes hacer verificando si es igual a "0123456789" funcion instr()
8.1.1.- lcCodPostal  = lcCodPostal  + lcLetra ; agrega letra a cadena de codigo postal
8.1.2.- lnCarNum = lnCarNum +1
8.1.3.- si lnCarNum > 5 , lbOut = true ; sale dek ciclo, porque completo los 5 digitos
8.2.1.- lnCarNum = 0  ; no es numerico, asi que empieza de nuevo
8.2.2.- lcCodPostal = ""  ; caso contrario
9.- Wend ;fin de ciclo
Como resultado vas a tener el código postal en la variable lcCodPostal
Suerte!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas