Gerardo:

2017-03-23 17:57 GMT+01:00 Gerardo Herzig <gher...@fmed.uba.ar>:
>> Buenos dias
>> Necesito extraer de un campo de texto los nros de DNI contenidos en
>> él.
>> Sé que los mismos se encuentran luego de la cadena 'DNI:'
>>
>> Con substring(texto from 'DNI:') ubico la cadena
...

> Que tal una expresion regular para borrar todo lo que *no* sean numeros:

Eso te vale si solo esta el dni, pero...

>
> select regexp_replace(texto, '[^0-9]', '','g') from tabla;

> postgres=# select *, regexp_replace(dni, '[^0-9]', '','g') as solo_numeros 
> from dnis;
>         dni         | solo_numeros
> --------------------+--------------
>  DNI:    12.382.712 | 12382712
>  DNI:12382712       | 12382712
>  DNI:123827..12     | 12382712
> (3 rows)
-- Que pasa si meto esto delante del select?
copy dnis(dni) from stdin;
Numero de telefono: 6666666
DNI: desconocido, TEL: 12345678
Tel: 66666 DNI: 12345678 Direccion: Avda. Pensilvania 1600
44100 = 2*2*3*3*5*5*7*7, tricky uh?
\.
-- Lo digo porque si tiene que buscar DNI: me extraña que la columna
sea simplemente "los digitos del dni con alguna cosa mas".

Francisco Olarte:

-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a