0

+91 (またはその他の国コード)-9999999999 (10 桁の携帯電話番号) の形式の携帯電話番号が必要です。

試してみ/^\+[0-9]{2,3}+[0-9]\d{10}ましたが、うまくいきません 助けてください

前もって感謝します

4

6 に答える 6

7

要するに解決策:

// should return an array with a single match representing the phone number in arr[0]
var arr = '+49-1234567890'.match(/^\+\d{1,3}-\d{9,10}$/); 
// should return null
var nullVal = 'invalid entry'.match(/^\+\d{1,3}-\d{9,10}$/); 

より長い説明:

  • /正規表現を開始
  • ^最初から合わせてみる
  • \++ 記号に一致
  • \d{1,3}数字を 1 ~ 3 回一致させる
  • -ダッシュに一致
  • \d{9,10}9桁または10桁に一致
  • $文字列の終了まで適用できる場合にのみ、一致を強制的に有効にします
  • /正規表現を終了

正規表現が何をするかを知っていれば、自分のニーズに合わせて変更できるかもしれません

遭遇した空白を無視するのが良い場合もあります。\s*0 または n 個の空白に一致します。したがって、より寛容にするために、ユーザーに次のような入力を許可することができます' + 49 - 1232345 '

これに一致する正規表現は次のようになります/^\s*\+\s*\d{1,3}\s*-\s*\d{9, 10}\s*$/(可能なスペースの場所を で埋めただけです\s*)

それ以外: 正規表現は多くの状況で非常に便利なので、習得することを強くお勧めします。

于 2013-04-24T09:53:35.183 に答える
2

数値にダッシュが必要な場合 (フォーマットが示しています)、それに一致する正規表現はありません: 正規表現の 2 番目のプラスはダッシュであることを意味しますか?

^\+[0-9]{2,3}-[0-9]\d{10}

また、次の点にも注意してください。

  1. 一部の国コードは 1 桁です (例: 北米は 1、ロシアは 7)。これらは一致しません。
  2. どこにでもあるすべての携帯電話のローカル部分が常に 10 桁であるとは思えません (たとえば、携帯電話の所有者が増えるにつれ、人口の多い国では十分ではなくなるでしょう)。
于 2013-04-24T09:50:45.600 に答える
1

マスク機能を使う

jQuery(function($){
  $("#phone").mask("999-999-9999",{placeholder:" "});   
});

ここを見てくださいhttp://office.microsoft.com/en-in/access-help/control-data-entry-formats-with-input-masks-HA010096452.aspx

于 2013-06-24T06:10:51.810 に答える
1

モバイル検証については、これを試してください

<html>
<head>
<title>Mobile number validation using regex</title>
<script type="text/javascript">
    function validate() {
        var mobile = document.getElementById("mobile").value;
        var pattern = /^[7-9][0-9]{9}$/;
        if (pattern.test(mobile)) {
            alert("Your mobile number : "+mobile);
            return true;
        }
        alert("It is not valid mobile number");
        return false;

    }
</script>

</head>
<body>
Enter Mobile No. :
<input type="text" name="mobile" id="mobile" />
<input type="submit" value="Check" onclick="validate();" />
</body>
</html>
于 2014-06-03T09:27:08.250 に答える
1
\+[0-9]{2,3}-[0-9]+

これを試して。+これは、先頭に a、国コードの 2 つまたは 3 つの数字、-その後に任意の数の数字が続くものと一致します。

于 2013-04-24T09:51:26.607 に答える