I need help with code that looks at a textfield make sure it starts with either a (+ or -) then has 3 integers after it.
So valid data looks like +234 or -888
Validate Email id or Phone number using Regular Expression
Ddelegate methods:
- (BOOL)textFieldShouldReturn:(UITextField *)aTextField
{
[aTextField resignFirstResponder];
return YES;
}
- (BOOL)textFieldShouldEndEditing:(UITextField *)aTextField
{
return [self validateEmail:aTextField.text]; // Change validateEmail to validatePhone for phone validation.
}
Returns YES or NO whether the input is valid or not:
- (BOOL) validateEmail: (NSString *) candidate {
NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";
NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];
return [emailTest evaluateWithObject:candidate];
}
- (BOOL) validatePhone: (NSString *) candidate {
NSString *phoneRegex = @"^+(?:[0-9] ?){6,14}[0-9]$";
NSPredicate *phoneTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", phoneRegex];
return [phoneTest evaluateWithObject:candidate];
}