0

この^((\d-\d{3})|(\d{1,3}))\-\d{3}-\d{7}$正規表現を使用して電話番号を検証します。

ただし、次の有効な番号は受け付けません。何が問題ですか?最後のゼロと関係があるのでしょうか?

90-312-2488900 
4

2 に答える 2

2

あなたの正規表現は正しく動作しているようです。

おそらく、問題はあなたの例の最後のスペースにあります。string.Trimで削除するか、正規表現に追加\s*してください (または、数値のすべてのグループの間に追加することもできます。

于 2013-05-07T12:34:25.227 に答える
0

例の最後のスペースは、一致しない原因です。regexpalに移動し 、正規表現を入力します。例を試すと、一致するものと一致しないものが表示されます。スペースがなくても大丈夫です。JleruOHep が推奨するように、文字列をトリミングするか、正規表現で空白を許可してください。

末尾の空白を除いた電話番号です。

そして空白付き。

黄色のハイライトが一致します。

于 2013-05-07T19:40:06.723 に答える