Re: [pgsql-es-ayuda] Consulta con expresión regular

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

In response to

Browse pgsql-es-ayuda by date

  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