Re: Filtrar expresion regular entre rangos especificos

From: Rusel Fichi <rdfs(dot)ing(at)gmail(dot)com>
To: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
Cc: pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Filtrar expresion regular entre rangos especificos
Date: 2015-07-14 02:06:29
Message-ID: CAMiTfwLf1GVcr14Cuacn_kBKndfmuOvg+hwcXiUZKj+qKGxDVw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Gracias Estimado por sus recomendaciones y por tomarse el tiempo en
escribirlas, ha sido de gran ayuda.

Saludos!

El 9 de julio de 2015, 18:20, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
escribió:

> Rusel Fichi escribió:
>
> > Ejemplo de la URL:
> >
> >
> > <a href="
> >
> http://dominio/noticia/21618-errores-del-mp-obligaron-a-la-justicia-a-descartar-algunos-casos-de-delitos-cambiarios
> ">Ejemplo
> > Noticia</a>
> >
> > En este caso debemos eliminar unicamente el id del enlace dentro de la
> > etiqueta <a>
>
> Si quieres ocultar información sobre tu dominio, no deberías dar un
> título que se pueda buscar fácilmente en un buscador web ...
>
> > Use:
> >
> > update article_article set content = regexp_replace(content,
> > '1|2|3|4|5|6|7|8|9|0', '', 'g') WHERE position('item/' in content) > 0
> and
> > position('-' in content) > 1
>
> Huy, eso no se ve nada bien.
>
> > Hay forma de definir una rango de busqueda dentro del campo para
> reemplazar
> > o eliminar un string o numero determinado? Como por ejemplo definir el
> > rango de busqueda entre la etiqueta <a></a>
>
> Meh.
>
> Podrías agregar el <a> ... </a> en la expresión regular, pero ¿qué pasa
> si el <a> está en una línea, el enlace en otra, y el </a> en una tercera
> línea? Tu sistema no funcionaría para nada. Es más, aunque consigas
> solucionar ese problema, cambiar los links dentro del HTML de
> contrapunto.com no va a corregir los links que pueda haber en terceras
> partes hacia tu sitio, como por ejemplo un tal www.google.com.
>
> Realmente la única solución que parece razonable a este problema es usar
> "redirects" en tu servidor web, y dejarlos permanentes. Por ejemplo, en
> postgresql.org antes los links al archivo web de listas de correo eran
>
> http://archives.postgresql.org/<nombre-de-lista>/<año-mes>/msgNNNNNN.php
> y ahora son
>
> http://archives.postgresql.org/message-id/fCAMiTfwLX6A6ud-e8MbvdsUmNoKwwc4sEjRvmmwmyPcE+LSuS1g@mail.gmail.com
>
> ¿Qué se hizo para preservar la funcionalidad de los links antiguos?
> Simple: se creó una tabla en la base de datos con dos columnas, una de
> ellas es <nombre-de-lista>/<año-mes>/msnNNNNN.php (o sea la dirección
> antigua) y la otra columna es el message-id. Cuando se recibe un HTTP
> GET para URLs del estilo antiguo, se busca en esa tabla el message-id
> correspondiente y se hace un HTTP redirect. Problema solucionado. La
> tabla tiene varios miles de URLs, pero hey, tenemos un sistema de
> almacenamiento de datos súper efectivo que podemos usar ...
>
> --
> Álvaro Herrera http://www.2ndQuadrant.com/
> PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
>

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Paola Alejandra de Montserrat Cordero Bon 2015-07-14 20:47:03 Re: Problemas para realizar update
Previous Message Anthony Sotolongo 2015-07-13 20:22:17 Re: duda sobre pgpool