我正尝试通过regex & jquery验证电话号码,当我给出+4401634687222或3301634687222这样的电话号码时,它就会起作用。基本上,电话号码可能如下所示,这些号码是有效的。
+44 (0) 1634 687222
+44(0)1634687222
4401634687222
25805487以下是我的验证代码。
var regEx = '1?\W*([2-9][0-8][0-9])\W*([2-9][0-9]{2})\W*([0-9]{4})(\se?x?t?(\d*))?';
var val = jQuery.trim($("input[id*='txtEnqphone']").val())
if (!val.match(regEx)) {
if ($('#Enquery_feed_loader').html() != '') {
$('#Enquery_feed_loader').fadeOut('slow', function () {
$('#Enquery_feed_loader').html('<span>' + dialog_Msg.Invalid_Phone + '</span>');
}).fadeIn('slow');
} else {
$('#Enquery_feed_loader').fadeOut('slow', function () {
$('#Enquery_feed_loader').html('<span>' + dialog_Msg.Invalid_Phone + '</span>');
}).fadeIn('slow');
}
$("input[id*='txtEnqphone']").focus()
flag = false;
return false;
}所以只要修改我的正则表达式,我就可以输入上面的电话号码了。谢谢
发布于 2013-06-27 19:30:41
试试这个:
^\(?\d{3}\)?[- ]?\d{3}[- ]?\d{4}$发布于 2013-06-27 19:50:10
试试这个:
^[+][0-9]\d{2}-\d{3}-\d{4}$上面正则表达式将允许以下模式的:
电话:+974-584-5656| +000-000-0000 | +323-343-3453
下面是will not be allowed。
电话:+974 000 0000
编辑:
对于上面的正则表达式修改是:^[0-9]\d{2} \d{3} \d{4}
您可以尝试的另一个正则表达式是:
^(1\s*[-\/\.]?)?(\((\d{3})\)|(\d{3}))\s*[-\/\.]?\s*(\d{3})\s*[-\/\.]?\s*(\d{4})\s*(([xX]|[eE][xX][tT])\.?\s*(\d+))*$允许: 2405525009 | 1(240) 652-5009
https://stackoverflow.com/questions/17341819
复制相似问题