2012-09-04 16 views
8

संभव डुप्लिकेट:
Ensure User has entered email address string in correct format?मान्य iphone में UITextField में ईमेल पता

मैं UITextField जिसमें मैं उपयोगकर्ता से ई-मेल पता है कि वे प्रवेश लेने के है, और मुझे मान्य करने के लिए चाहते हैं वह ईमेल पता, जैसे कि मुझे यह जांचना चाहिए कि इसमें @ चिह्न और अन्य ईमेल वर्ण जैसे प्रतीक शामिल हैं।

यदि ईमेल पते में कोई त्रुटि है तो उसे UIAlertView दिखाया जाना चाहिए जो "एक वैध ईमेल पता दर्ज करें" कहेंगे।

उत्तर

22

उद्देश्य सी शैली

NSString *emailRegEx = @"[A-Z0-9a-z._%+-][email protected][A-Za-z0-9.-]+\\.[A-Za-z]{2,10}"; 
NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegEx]; 

if ([emailTest evaluateWithObject:email.text] == NO) { 

    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Test!" message:@"Please Enter Valid Email Address." delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil]; 
    [alert show]; 
    [alert release]; 

    return; 
} 

स्विफ्ट स्टाइल

class func isValidEmail(emailString:String) -> Bool { 

    let emailRegEx = "[A-Z0-9a-z._%+-][email protected][A-Za-z0-9.-]+\\.[A-Za-z]{2,10}" 
    var emailTest = NSPredicate(format:"SELF MATCHES %@", emailRegEx) 

    let result = emailTest?.evaluateWithObject(emailString) 
    return result! 
} 
3

आप NSPredicate

का उपयोग कर ऐसा कर सकते हैं
//suppose emailID is your entered email address NSString 
NSString *emailFormat1 = @"[A-Z0-9a-z._][email protected][A-Za-z0-9]+\\.[A-Za-z]{2,4}";  


NSPredicate *emailTest1 = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailFormat1]; 


if ([emailTest1 evaluateWithObject:emailID]||[emailTest2 evaluateWithObject:emailID]) { 
    //yes it is valid 
} 
else 
    //no it is invalid 
संबंधित मुद्दे