ユーザーに複数の携帯電話番号を入力してもらいたいテキスト ボックスがあります。各番号は 10 桁のみで、カンマで区切る必要があります。コンマ以外の特殊文字は使用できません。スペースも使用できません。
2885 次
6 に答える
5
テキストボックスから値を取得する方法を理解できると思います。
番号の検証を行う正規表現は次のとおりです。
/^(\d{10}(,\d{10})*)?$/
これにより、フィールドを空白にすることができますが、何かを入力する場合は、コンマで区切った1つ以上の10桁の数字にする必要があります。
于 2012-11-27T08:44:54.113 に答える
1
全体に対して 1 つの正規表現を見つける代わりに、それを分割して各セグメントの式をテストし、悪いものを削除して元に戻すことができます。このようにして、理論的には何百もの電話番号を照合できます:)
var numbers = 'aaa,456,789'.split(',').filter(function(item) {
return /^\d{10}$/.test(item)
});
if (numbers.length > 2) {
// too many numbers?
} else if (!numbers.length) {
// no numbers?
}
// this will give you back a comma separated list in a string
// numbers.join(',')
すべてのブラウザArray.filter()
で動作するとは限らないことに注意してください。そのため、適切な代替手段を見つける必要があります。
于 2012-11-27T08:48:07.853 に答える
0
あなたはこれを行うことができます
/^\d{10}(,\d{10})*$/
\d{10}
10桁に一致
(,\d{10})*
マッチ,
と10桁の0~何度でも
于 2012-11-27T08:42:07.243 に答える
0
電話番号の検証機能。フィールドが空のままの場合、これは true に検証されます。
function validateNumbers( text ) {
var numbers = text.split(",");
for( var i = 0, len = numbers.length; i < len; i++ ) {
if( !/^\d{10}$/.test( numbers[i] ) ) {
return false;
}
}
return true;
}
于 2012-11-27T09:14:34.473 に答える
0
次の正規表現パターンのいずれかを使用します。
/^(\d{10}(,(?=.))?)+$/
/^(\d{10}(,(?=.)|$))+/
/^(\d{10}(,(?=.)|))+$/
/^\d{10}(,\d{10})*$/
于 2012-11-27T09:53:59.663 に答える
0
他のものと同様ですが、その\d{10}
部分を繰り返す必要はありません
^(?:\d{10},?\b)+$
于 2012-11-27T09:01:40.907 に答える