我需要一个正则表达式使用JavaScript /适合这些规则jQuery的使用...我的JavaScript regex/regex语法有什么问题?
- 将包括10位
- 如果有一个领导
1
或+1
应该忽略它 - 有效字符允许在该领域是...
0-9
,()
,并-
我发现了一个正则表达式在Snipplr(第一个),但它不是WO rking。首先,我甚至不确定该正则表达式是否符合我的规则。其次,它允许输入像&^%$$#%^adfafsd
。我相信这个错误是在我的代码中,而不是正则表达式。例如,是否应该引用表达式的引号?
这里是应该被验证手机领域的代码...
$('#phone').bind('blur', function() {
var pattern = new RegExp("^(?:\+?1\s*(?:[.-]\s*)?)?(?:\(\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\s*\)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\s*(?:[.-]\s*)?([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\s*(?:[.-]\s*)?([0-9]{4})$");
if(pattern.test($('#phone').val())){
$("#phone").addClass("error");
return false;
}else{
$("#phone").removeClass("error");
return true;
}
return true;
})
你是否在找它以匹配任何电话号码?如果包含破折号和括号,则有相当多的电话号码格式可供选择,而当您使用国际号码和分机号时则更多。否则你的代码看起来很好。正则表达式也起作用。 – 2012-02-01 19:16:24