0

次の形式の正規表現を使用して電話番号を検証したい.Googleで検索しましたが、次の形式の正規表現が見つかりませんでした...

    079-26408300 / 8200
    (079) 26408300
    079 264 083 00 
    9429527462

上記の形式の電話番号フィールドを検証する方法を教えてください。現在、次の正規表現のみを使用しているため、上記の形式のみで電話番号を検証したいvar phone_pattern = /^[a-z0-9]+$/i;

@アリ・シャー・アーメド

var phone_pattern = "(\d{10})|(\d{3}-\d{8}\s/\s\d{4})|((\d{3}\s){3}\d{2})|((\d{3})\s\d{8})";

これが有効かどうかを確認する方法です

if (!phone_pattern.test(personal_phone))
        {
            $("#restErrorpersonalphone").html('Please enter valid phone number');
            $("#personal_phone").addClass('borderColor');
            flag = false;
        } else {
            $("#restErrorpersonalphone").html('');
            $("#personal_phone").removeClass('borderColor');
        }

動いていない。間違った方法で実装していますか?

4

2 に答える 2

1

最も単純な電話番号から始めましょう。9429527462
これは 10 文字で、すべて数字であるため、正規表現は次のようになります。\d{10}

次の電話番号079 264 083 00です。このパターンの正規表現は次のようになります。(\d{3}\s){3}\d{2} まず、3 桁のグループとスペースが 3 回繰り返されることを期待しています(\d{3}\s){3}。これでカバーされます079 264 083(スペースが含まれています)。\d{2}

電話番号については(079) 26408300\(\d{3}\)\s\d{8}正規表現を使用できます。正規表現は、最初に開きかっこを探し、次にその中の 3 桁の数字を探し、次に閉じかっこを探します。次に、スペースを探し、次に 8 桁を探します。

電話番号079-26408300 / 8200は regex を使用して検証できます\d{3}-\d{8}\s/\s\d{4}。最初に 3 桁を検索し、次に - を検索し、次に 8 桁を検索し、その後にスペースを検索します。次に、/、スペース、4 桁の順に検索します。

上記のすべてのパターンを検証するための単一の正規表現を知りたい場合は、お知らせください。

最終的に組み合わされた正規表現は次のようになります。

/(\d{10})|(\d{3}-\d{8}\s\/\s\d{4})|((\d{3}\s){3}\d{2})|(\(\d{3}\)\s\d{8})/
于 2013-01-30T05:14:00.603 に答える
0

簡単な解決策は簡単です。 | を使用してください。

String ex = "\\d{3}-\\d{8} / \\d{4}|\\(\\d{3}\\) \\d{8}|...
于 2013-01-30T05:00:59.990 に答える