2017-10-23 17 views
2

うまくいけば簡単です。スウィフト、電話番号の正規表現

私は8つの数字の制限が必要です。ユーザーは8つ以上の数字を書く必要があります。今、このために

は私のコードです:

telefonRegex = "^(?=.*[0-9])$" 

しかし、それは私がちょうどFYI正規表現について聞いた、機能していません。

+0

'telefonRegex ="^[0-9] {8} $ "' –

+1

完璧、ありがとう –

答えて

4

現在の正規表現は文字列の先頭で一致を開始する必要があるため文字列に一致しません(^)。その後、改行以外の0以上の文字の後に数字([0-9]) chars(.*)、最初の文字列の終わりに一致するようにします。つまり、空の文字列に一致しますが、少なくとも1桁も必要です。

あなただけの唯一の8桁の数字で構成された文字列に一致するように

let telefonRegex = "^[0-9]{8}$" 

または

let telefonRegex = "\\A[0-9]{8}\\z" 

を使用することができます。

詳細

  • ^ - 文字列の先頭
  • [0-9]{8}(文字列リテラルで\\Aで置き換えられていてもよい) - 文字列の最後(に - 任意の数字
  • $の正確8つのオカレンス文字列の最後が一致していることを確認し、文字列リテラルに\\zを使用してください)。
関連する問題