0

次のようなUAEの携帯電話番号を検証する正規表現が必要です

+9710501234566 または

+971 (050) (123 4566)

現在、私は使用しています

^(\+971[\s]{0,1}[\-]{0,1}[\s]{0,1}|[\s]{0,1}0)(5[056]{1})[\s]{0,1}[\-]{0,1}[\s]{0,1}[1-9]{1}[0-9]{6}$

私を手伝ってくれますか?正規表現が苦手で...

4

2 に答える 2

2

これを試して:

Regex regex = new Regex(@"^\+971(\d{10}|\s\(\d{3}\)\s\(\d{3}\s\d{4}\))$");

基本的には +971 をそのままチェックし、その直後の 10 桁、またはパターン スペース - 左括弧 - 3 桁 - 右括弧 - スペース - 左括弧 - 3 桁 - スペース - 4 桁 - 右括弧のいずれかをチェックします。

サンプル文字列は可能な2つのパターンのみであると述べたので、正規表現でリテラル文字「+」、「(」、および「)」を使用したことに注意してください。

これを拡張してスペースのない括弧を許可する場合は、に置き換え\s\s?スペースをオプションにします。

于 2014-07-09T06:57:02.617 に答える