Last active
April 25, 2018 04:19
-
-
Save byeounghoon/cd13f240b9c4dd1f61e7dc7a68c567ba to your computer and use it in GitHub Desktop.
Regex(with String Extension) Swift4.0
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import AVFoundation | |
extension String { | |
//한글 검증 | |
func isHangul() -> Bool { | |
let regEx = "^[가-힣0-9]+$" | |
let emailTest = NSPredicate(format:"SELF MATCHES[c] %@", regEx) | |
return emailTest.evaluate(with: self) | |
} | |
//이메일 검증 | |
func isEmailValid() -> Bool { | |
let emailRegEx = "(?:[a-z0-9!#$%\\&'*+/=?\\^_`{|}~-]+(?:\\.[a-z0-9!#$%\\&'*+/=?\\^_`{|}"+"~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\"+"x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-"+"z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5"+"]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-"+"9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21"+"-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)\\])" | |
let emailTest = NSPredicate(format:"SELF MATCHES[c] %@", emailRegEx) | |
return emailTest.evaluate(with: self) | |
} | |
//폰번호 검증 | |
func isTelNumberValid() -> Bool { | |
let PHONE_REGEX = "^\\d{3}\\d{4}\\d{4}$" | |
let phoneTest = NSPredicate(format: "SELF MATCHES %@", PHONE_REGEX) | |
return phoneTest.evaluate(with: self) | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment