餘米的工作在其上別人是如下NSPredicate檢查某些字符串
+(BOOL)emailValidate:(NSString *)email {
NSString *emailRegex = @"[A-Z0-9a-z._%+-][email protected][A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";
NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];
return [emailTest evaluateWithObject:email];
}
+(BOOL) IDValidate:(NSString *)ID {
NSString *regexString = @"[ A-Z0-9a-z_+-]{1,20}";
NSPredicate *regex = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regexString];
return [regex evaluateWithObject:ID];
}
我想alow ID和電子郵件的空間「」和逗號「」實施了代碼,我搜索很多如何修改謂詞格式但找不到答案。
如果你正在檢查郵件地址列表(這是「允許郵件中的逗號和空格」我想過的唯一方法),我會添加一個解決方案,可以刪除所有空間('stringByReplacingString: withString:')並使用'componentsSeparatedByString'(與昏迷)並檢查它們中的每一個。有了這個,你甚至可以知道哪個地址不適合。 – Larme
是的,這個技巧會起作用,但不是推薦的方式,因爲當系統支持某些事情時,那麼爲什麼要爲自己做, – AsifHabib
那麼,我建議的用途是告訴用戶哪個地址完全不適合,信息這不是由Mohammad Imran建議的「all in one」NSPredicate返回。這是萬一,這個用例可能會讓你(或SO的另一個成員)感興趣,因爲它應該很好地工作。 – Larme