JavaScript中是否可以检查字符串是否为URL?
正则表达式被排除在外,因为URL的写法很像stackoverflow;也就是说,它可能没有.com,www或者http。
stackoverflow
.com
www
http
与答案相关的问题:
或来自Devshed的此正则表达式:
function validURL(str) { var pattern = new RegExp('^(https?:\\/\\/)?'+ // protocol '((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|'+ // domain name '((\\d{1,3}\\.){3}\\d{1,3}))'+ // OR ip (v4) address '(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*'+ // port and path '(\\?[;&a-z\\d%_.~+=-]*)?'+ // query string '(\\#[-a-z\\d_]*)?$','i'); // fragment locator return !!pattern.test(str); }