入力が日付形式かチェック(Swift)

Pocket
LinkedIn にシェア
LINEで送る
Facebook にシェア

入力された値が日付形式になっているかチェックする方法です。

iOS:8.4
Xcode:6.4
Swift:1.2

if let dateString = txtDate!.text.toInt() {
 let dataFormatter = NSDateFormatter()
 dataFormatter.dateFormat = "yyyyMMdd"
 if let date = dataFormatter.dateFromString(dateString) {
  // OK
 } else {
  showAlert("日付は 20150822 のように入力して下さい。")
  return false;
 } 
} else {
 showAlert("日付は数字で入力して下さい。")
 return false;
}

一旦入力が数字かどうか確認してから日付形式か確認します。
「/」(スラッシュ)とかを入れるなら数字の確認は不要です。