From: | Rodriguez Fernando <rodriguez(at)ort(dot)edu(dot)uy> |
---|---|
To: | Gustavo <gustavor(at)intercomgi(dot)net> |
Cc: | PostgreEs <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: [pgsql-es-ayuda] Consulta con expresión regular |
Date: | 2007-08-30 14:39:52 |
Message-ID: | 46D6D6B8.2040304@ort.edu.uy |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Lo que podrias hacer es :
select (length(campo) -length(replace(campo.'\\',''))-1) as porfundidad
o mejor
select * from tabla where (length(campo)
-length(replace(campo.'\\',''))-1) = 0 ( estos son los que estan en la
raiz)
Saludos Fernando
Gustavo wrote:
> Buenas lista, no me llevo muy bien con las expresiones regulares.
> Tengo una tabla en la que guardo paths de archivos y directorios.
> Necesitaria hacer una consulta que me devuelva todos los archivos y
> directorios hasta un determinado nivele de preofundidad.
>
> Ejemplo:
>
> Tabla:
>
>
> "C:\Archivos de programa\Windows Media Player"
> "C:\Archivos de programa\Inno Setup 5"
> "C:\Archivos de programa\Inno Setup 5\Languages"
> "C:\00000\00001"
> "C:\00000\00002"
> "C:\00000\00003.txt"
> "C:\00000\00001\00011"
> "C:\00000\00001\00021"
> "C:\00000\00001\00011\00111"
> "C:\Documents and Settings\Ismael"
> "C:\Documents and Settings\Ismael\Configuración local"
> "C:\Documents and Settings\Ismael\Configuración local\Datos de programa"
> "C:\Documents and Settings\Ismael\Configuración local\Datos de
> programa\Adobe"
>
>
> Consulta: Obtener todos los archivos y directorios que empiezen con
> C:\ y tengan dos nivelesde profundidad
>
>
> Resultado:
>
> "C:\Archivos de programa\Windows Media Player"
> "C:\Archivos de programa\Inno Setup 5"
> "C:\00000\00001"
> "C:\00000\00002"
> "C:\00000\00003.txt"
> "C:\Documents and Settings\Ismael"
>
>
> Esta es la expresion regular que estoy armando pero no me funciona
> como quiero.
>
> SELECT * FROM filesystem WHERE full_path
> ~E'C:\\\\([^\\\\].*\\\\){0,0}' //Caso en el que quiero obterner todos
> los archivos y direcotrios de C:\ sin meterme recursivamente en
> subdirectorios
>
>
> Cualquier ayuda es bienvenida, de paso si alguien sabe quería saber
> que tan eficiente es esta consulta. Se espera tener una tabla bastante
> grande (campo full_path indexado)
>
> Saludos
>
> Gustavo
> --
> ---------------------------(fin del mensaje)---------------------------
> TIP 3: si publicas/lees desde Usenet, por favor envía "subscribe-nomail"
> a majordomo(at)postgresql(dot)org para que tus mensajes puedan llegar
> a los suscriptores de la lista
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2007-08-30 14:44:52 | Re: Re: [pgsql-es-ayuda] Consulta con expresión regular |
Previous Message | Gustavo | 2007-08-30 14:33:04 | Re: [pgsql-es-ayuda] Consulta con expresión regular |