Validar url

  • Autor Autor coni
  • Fecha de inicio Fecha de inicio
C

coni

Curioso
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
hola amigos!! quiero validar una url y consegui esta funcion
PHP:
function validar(str) {
    var expresion = /^(http|https):\/\/[a-z0-9\.-]+\.[a-z]{2,4}(\/.*)?$/
    //Retorna true en caso de que la url sea valida o false en caso contrario
    return expresion.test(str);
 }

//var cadena = "http://google.com"; //retorna true
//var cadena = "http://hola-mundo.com/"; //retorna true
//var cadena = "http://hola.mundo.com/"; //retorna true
var cadena = "http://hola...mundo...com"; // retorna true

if(validar(cadena)){
   alert('Bien');
}else{
    alert('error');
}

anda todo bien pero cuando ingreso una url como estas quiero que devueva false
http://google---.com
http://hola---mundo----.com
http://google..com
http://hola...mundo...com
http://hola..mundo.com
 
Uh pero estoy validando con js ese filtro no es de php?
 
Uh pero estoy validando con js ese filtro no es de php?

Ese código es javascript.
Pienso que con expresiones regulares es dificil validar una url, tiene demasiadas combinaciones para poder descartar.

Una buena solución seria con la función "filter_var" con el filtro FILTER_VALIDATE_URL de php.
 
voy a probar con el filtro de php
 
Atrás
Arriba