正则表达式阻止url字段中的域

时间:2016-09-01 06:37:12

标签: javascript jquery regex

我想从输入url字段中阻止某些域名,我正在使用jQuery Validation插件,我创建了一个自定义方法,我唯一想不到的是正则表达式,它让我发疯。

$.validator.addMethod("customurl",
function(value, element) {
        return /^([\w-.]+@(?!facebook\.com)(?!twitter\.com)(?!instagram\.com)([\w-]+.)+[\w-]{2,4})?$/.test(value);
},

"Social links not allowed"
);

当前正则表达式阻止以这些域名结尾的电子邮件地址,但我想阻止这些网址,例如:

https://www.facebook.com/username

https://facebook.com/username

http://facebook.com/username

1 个答案:

答案 0 :(得分:0)

我只想添加另一个正则表达式测试:

/https?\:\/\/(www\.)?facebook\.com\/(.*)/

可能类似于:

$.validator.addMethod("customurl",
function(value, element) {
   var emailTest = /^([\w-.]+@(?!facebook\.com)(?!twitter\.com)(?!instagram\.com)([\w-]+.)+[\w-]{2,4})?$/.test(value);
   var urlTest = /https?\:\/\/(www\.)?facebook\.com\/(.*)/.test(value);
   return !emailTest && !urlTest;
});