Formatear string para URL

Os traemos una función con la que convertir un string en una cadena apta para formar una URL (en minúsculas, sin espacios, eñes ni tildes) válida para todas las codificaciones.

Por ejemplo:

Función para convertir strings en cadenas sin eñes ni tildes

->

funcion-para-convertir-strings-en-cadenas-sin-enes-ni-tildes

Esperamos que os sea de utilidad.

CREATE OR REPLACE FUNCTION FORMATURL( S IN VARCHAR2 ) RETURN VARCHAR2 IS

TMP VARCHAR2(255);
BEGIN

     TMP:= LOWER(S);
     TMP:= REPLACE(TMP,' ','-');
     TMP:= REPLACE(TMP,'á','a');
     TMP:= REPLACE(TMP,'é','e');
     TMP:= REPLACE(TMP,'í','i');
     TMP:= REPLACE(TMP,'ó','o');
     TMP:= REPLACE(TMP,'ú','u');
     TMP:= REPLACE(TMP,'à','a');
     TMP:= REPLACE(TMP,'è','e');
     TMP:= REPLACE(TMP,'ì','i');
     TMP:= REPLACE(TMP,'ò','o');
     TMP:= REPLACE(TMP,'ù','u');
     TMP:= REPLACE(TMP,'ñ','n');
     TMP:= REGEXP_REPLACE (TMP,'[^a-zA-Z0-9\/_-]','-' );    
     TMP:= REGEXP_REPLACE (TMP,'-+','-' );
     TMP:= REGEXP_REPLACE (TMP,'-?(.*)','\1' );
     TMP:= REGEXP_REPLACE (TMP,'(.*)-$','\1' );
    
     RETURN TMP;
  
END FORMATURL;

About: admin


Deja un comentario

Tu dirección de correo electrónico no será publicada.