10

私はhappyJSを使用しており、その下の正規表現を電話の検証に使用しています

phone: function (val) {
        return /^(?:[0-9]+$)/.test(val);
    }

ただし、これは数字のみを許可します。ユーザーがスペースを入力できるようにしたい

238 238 45383

なぜreturn /^(?:[0-9 ]+$)/.test(val);トリックをしていないのですか?

4

5 に答える 5

9

これは私の提案する解決策です:

/^(?=.*\d)[\d ]+$/.test(val)

(?=.*\d)、入力に少なくとも1桁あることを表明します。それ以外の場合は、空白のみの入力が一致する可能性があります。

これは、桁数(少なくとも1桁であることを確認するだけ)、または入力のどこにスペースを表示するかについての制約を課さないことに注意してください。

于 2012-11-05T10:22:01.003 に答える
6

試す

phone: function (val) {
    return /^(\s*[0-9]+\s*)+$/.test(val);
}

上記を成功させるには、少なくとも1つの番号が存在する必要がありますが、 ここで正規表現の例をご覧ください。

于 2012-11-05T10:20:26.280 に答える
0

個人的に私はこのコードを使用し、それは正しく動作します:

function validateMobile(mob) 
{ 
     var re = /^09[0-9]{9}$/
     if(mob.match(re))
         return true;
     else
        return false; 
}
于 2012-11-05T10:23:00.443 に答える
0

数字とスペースをチェックするには、以下の正規表現を試すことができます。

function isTextAndNumberSpaceOnly(text) {
    var regex = /^[0-9 ]+$/;
    if (regex.test(text)) {
        return true;
    } else {
        return false;
    }
}
于 2020-04-21T06:56:08.700 に答える