0

電話番号の正規表現で「-」を許可しようとしていますが、- は通常、範囲 (AZ など) に使用されます。では、どうすればキャラクターだけを許可できますか? /- を使用してエスケープしようとしましたが、うまくいきません。

$reg_num = "/[^0-9+ ()]/"; 
4

4 に答える 4

5

バックスラッシュでエスケープする必要があります\。したがって、 のように記述する必要があります\-

于 2012-07-23T03:56:22.100 に答える
3

2 つの文字の間の「-」ではなく、最後に記述します。非常に単純化され た例: 0-9 が範囲であり、最後の が[0-9-]一致する別のダッシュ記号である場合に一致します。099-2233-3333-

于 2012-07-23T03:56:27.997 に答える
1

のように範囲の最初に置き[^-0-9+ ()]ます。範囲を定義するには、ハイフンで 2 つの文字を区切る必要があります。そうでない場合 (この場合、^もセット内の文字ではなく修飾子として解釈されるため)、それは他の文字と同様にセット内の単なる文字です。

于 2012-07-23T03:58:35.290 に答える
0

を使用してエスケープ\-

\

はエスケープキャラクターです!

于 2012-07-23T04:02:03.393 に答える