小编典典

检查 JavaScript 字符串是否为 URL

all

JavaScript中有没有办法检查字符串是否是URL?

正则表达式被排除在外,因为 URL 很可能是这样写的stackoverflow;也就是说,它可能没有.com,wwwhttp


阅读 98

收藏
2022-03-17

共1个答案

小编典典

或者来自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);
}
2022-03-17