Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import Foundation
- class InputsValidationService {
- // No special characters (e.g. @,#,$,%,&,*,(,),^,<,>,!,±)
- // Only letters, underscores and numbers allowed
- // Length should be 18 characters max and 3 characters minimum
- static func isValid(username:String) -> Bool {
- let regEx = "\\A\\w{3,18}\\z"
- let pred = NSPredicate(format:"SELF MATCHES %@", regEx)
- return pred.evaluate(with:username)
- }
- // There’s some text before the @
- // There’s some text after the @
- // There’s at least 2 alpha characters after a .
- static func isValid(email:String?) -> Bool {
- guard email != nil else { return false }
- let regEx = "[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}"
- let pred = NSPredicate(format:"SELF MATCHES %@", regEx)
- return pred.evaluate(with: email)
- }
- // at least one uppercase,
- // at least one digit
- // at least one lowercase
- // 6 characters total
- static func isValid(password:String?) -> Bool {
- guard password != nil else { return false }
- let pred = NSPredicate(format: "SELF MATCHES %@", "(?=.*[A-Z])(?=.*[0-9])(?=.*[a-z]).{6,}")
- return pred.evaluate(with: password)
- }
- }
Add Comment
Please, Sign In to add comment