JavaScript ile bir dizinin(string) URL olup olmadığını kontrol etmek için aşağıdaki fonksiyonlar kullanılabilir.
Eğer sadece HTTP/HTTPS URL’lerden bahsediyorsak bu:
function isValidHttpUrl(string){
let url;
try{
url = new URL(string);
}catch (_){
return false;
}
return url.protocol === "http:" || url.protocol === "https:";
}
Alternatif:
function isUrl(s){
var regexp = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
return regexp.test(s);
}
Email adresini doğrulamak:
function ValidateEmail(emailId)
{
let mailformat = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/;
if(emailId.match(mailformat)){
console.log("Geçerli adres");
return true;
}
else{
console.log("Gçersiz adres");
return false;
}
}
jQuery ile:
function validURL(str){
var pattern = new RegExp('^(https?:\\/\\/)?'+ // protocol
'((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|'+ // domain
'((\\d{1,3}\\.){3}\\d{1,3}))'+ // OR ip (v4) address
'(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*'+ // port and path
'(\\?[;&a-z\\d%_.~+=-]*)?'+ // query
'(\\#[-a-z\\d_]*)?$','i'); // fragment
return !!pattern.test(str);
}
Daha fazlası için: https://stackoverflow.com/questions/5717093/check-if-a-javascript-string-is-a-url