Step 1. First create your own character set.
NSCharacterSet *set = [NSCharacterSet characterSetWithCharactersInString:
@"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890_"];
Step 2. Once you have that, you invert it to everything that's not in your original string:
set = [set invertedSet]; Step : 3
NSRange r = [string rangeOfCharacterFromSet:s]; if (r.location != NSNotFound) { NSLog(@"the string contains illegal characters"); }