0

私は正規表現で少し週を過ごしています。正規表現と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;
}

正規表現を変更するだけで、上記の電話番号を入力できます。ありがとう

4

2 に答える 2

0

これを試して :

^\(?\d{3}\)?[- ]?\d{3}[- ]?\d{4}$
于 2013-06-27T11:30:40.760 に答える
0

これを試して :

^[+][0-9]\d{2}-\d{3}-\d{4}$

上記の正規表現では、次のパターンが許可されます。

+974-584-5656 | +000-000-0000 | +323-343-3453

そして、以下は許可されません。

974-584-5656 | +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

于 2013-06-27T11:50:10.420 に答える