2016年8月19日金曜日

Swift 3.x: 正規表現

Swift 3 になり、さらに beta6 になって、細かいところが色々と変わっています。 Swift 2.2 で試したコードを Swift3 beta6 に合わせて変更しました。

正規表現テスト用クラス:

プレイグラウンドの Sources フォルダに RegExUtil.swift ファイルを作成します:

  • 4: 電子メールアドレスの正規表現。
  • 7: 電話番号の正規表現。
  • 10: 郵便番号の正規表現。
  • 13-49: String を拡張して、文字列が電子メールアドレスか?(isEmail)、電話番号か?(isPhoneNo)、郵便番号か?(isZip)を調べる関数を追加します。
    それぞれの関数で、 4,7,10 行で定義した正規表現を使っています。
  • 62-85: 正規表現の使い方を示す、テストクラス(RegExTest)です。
プレイグラウンドで上述の RegExTest クラスの各メソッドを実行します。

以下に、RegExTest クラスのそれぞれのテストの内容と実行結果を示します。

予約文字:

実行結果:


特殊なエスケープ文字:

実行結果:


予約文字の意味と用法:

実行結果:


電子メール:

実行結果:


電話番号:

実行結果:


郵便番号:

実行結果: