1

数字、ダッシュ、括弧のみを許可する必要がある変数があります。電話番号には特定の長さはありません。また、検証は php で行う必要があり、javascript は許可されません。

編集 正規表現にもスペースを許可したかっただけです....

ありがとう

4

1 に答える 1

2

それで、私はここでの質問について少し混乱していますが、私はそれを試してみて、うまくいけば、あなたが必要な場所にあなたを連れて行くでしょう。

これにより、指定した文字を含むすべてのものが許可されます。(303)123-4567許可されます。のように32084248())(21324234--234242-23-(明らかに電話番号ではありません)

if( preg_match("/^[0-9() -]+$/", $number) {
    // Only numbers, parens and hypens allowed
}

正規表現をもう少し厳密にしたい場合は、米国スタイルの番号に制限できます。

if( preg_match("/^\d{0,3}-?(?:\(\d{3}\)|\d{3})-?\d{3}-?\d{4}$/", $number) {
    // US Phone number
}

これにより、オプションの国コードを含む米国スタイルの番号のみが許可されます。これにより可能になる一致する番号のより完全なリストについては、このReFiddleリンクを参照してください。

于 2012-06-23T08:12:07.960 に答える