使用javascript检查url是否为facebook链接和正确的url

使用javascript检查url是否为facebook链接和正确的url,javascript,regex,url,Javascript,Regex,Url,我想检查用户输入的url是否是facebook链接。如果它是正确的url格式,并且它的url上包含facebook.com 我的代码需要获取用户的facebook个人资料链接。众所周知,它的结构是facebook.com/[username] 它必须能够接受示例:www.facebook.com或 但是,如果它包含如上所述的用户名,这也是facebook个人资料链接的正确url,那么还有一个额外的问题 我试过的是,这是一个基本的代码,用来检查url是否遵循正确的格式,但我仍然不知道在哪里可以检查

我想检查用户输入的url是否是facebook链接。如果它是正确的url格式,并且它的url上包含facebook.com

我的代码需要获取用户的facebook个人资料链接。众所周知,它的结构是facebook.com/[username]

它必须能够接受示例:www.facebook.com或

但是,如果它包含如上所述的用户名,这也是facebook个人资料链接的正确url,那么还有一个额外的问题

我试过的是,这是一个基本的代码,用来检查url是否遵循正确的格式,但我仍然不知道在哪里可以检查它是否包含facebook单词,以及是否有其他的片段

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);
}
返回!!模式测试(str)应该是
返回模式。测试(str)
RegExp#test()
返回true或false布尔结果。另外,不需要在RegExp构造函数字符串模式中转义
/
返回!!模式测试(str)应该是
返回模式。测试(str)
RegExp#test()
返回true或false布尔结果。此外,不需要在RegExp构造函数字符串模式中转义
/