LoginSignup
0
1

More than 3 years have passed since last update.

Swift TextFieldに入力された文字がメールアドレスかどうか確認する方法

Last updated at Posted at 2020-12-24

TextFieldに入力された文字がメールアドレスかどうか確認する方法

今回、TextFieldに入力された文字がメールアドレスかどうかによって条件分岐する方法を実装していきたいと思います。

まず初めにLabel,TextField,Buttonを設置

スクリーンショット 2020-12-24 15.47.40.png

次にitemとコードを接続

スクリーンショット 2020-12-24 15.49.46.png

下記のコードを追加する

//メールアドレスかどうかのクラス
class func isValidMailAddress(_ string: String) -> Bool {
        let mailAddressRegEx = "[A-Z0-9a-z._+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"
        let mailAddressTest = NSPredicate(format:"SELF MATCHES %@", mailAddressRegEx)
        let result = mailAddressTest.evaluate(with: string)
        return result
}

ButtonをTouchUpInsideで接続

スクリーンショット 2020-12-24 15.59.01.png

ここにコードを書いていきます

ラストスパート!

import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var Label: UILabel!
    @IBOutlet weak var TextField: UITextField!
    @IBOutlet weak var Button: UIButton!


    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
    }


    //メールアドレスかどうかのクラス
    class func isValidMailAddress(_ string: String) -> Bool {
            let mailAddressRegEx = "[A-Z0-9a-z._+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"
            let mailAddressTest = NSPredicate(format:"SELF MATCHES %@", mailAddressRegEx)
            let result = mailAddressTest.evaluate(with: string)
            return result
     }


    @IBAction func ButtonTouchUpInside(_ sender: Any) {
        //メールアドレスが正しい時
        if ViewController.isValidMailAddress(self.TextField.text!) {
            Label.text = "正しいメールアドレスです"
        //メールアドレスが正しくない時
        } else {
            Label.text = "正しいメールアドレスを入力してください"
        }
    }


}

完成

ezgif-6-b32a736c76c7.gif

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1