2016-06-23 7 views
0

私はいくつかの国でE.164タイプの正規表現を作成しようとしています。私は明白に(+)プラスを自分の番号と、ほとんどの場合複数の国番号で持たなければならない。何らかの理由 :「421233339135」'/^(\+[4][2][1])?([1-9]\d\d{7})$'powershell regexとe.164

421と一致していませんが、国コードで、CC後の最初の数字は1-9の間にする必要があり、残りはそれから9つの数字、その後で任意の数値を指定できます。 DID番号。誰かが何らかの理由で

+0

として簡単に説明されるだろうか?します。 https://regex101.com/r/hH5oW1/1。あなたが持っているコードを共有してください。 –

+0

私がpowershellで正規表現の先頭から/を削除すると、-matchは真です。私は私の問題を解決するかもしれない別の問題を発見しています - '+421233339135'はExcelの4.21233E + 11に変換されます。メモ帳で同じCSVファイルを開くと、正しい形式が表示されます。 – PdeRover

+0

@ user3220278最後の問題は* Excel形式の問題です*、PowerShell –

答えて

1

:-)を助けることができる

希望: '421233339135' は'/^(\+[4][2][1])?([1-9]\d\d{7})$'

と一致していないパターンが期待されていない前に、PowerShellはPerlの、主要な/ではありません - それを除く。

パターン自体は、あなたはそれがない何を意味しています^(\+421)?([1-9]\d{8})$

PS C:\> $phoneNumber = '+421233339135' 
PS C:\> $phoneNumber -match '^(\+421)?([1-9]\d{8})$' 
True 
+0

@ PdeRoverとは関係がありません。$ twelvと$ thirtが何であるか知らずに、私はあなたのコメントから何を取り除くべきか分かりません –

関連する問題