Comment puis-je valider un numéro de téléphone à l'aide de NSDataDetector. Dans mon projet, la longueur de texte supérieure à 14 est également valide, mais NSDataDetector ne le détecte pas de cette façon.
J'utilise le code du post stackoverflow suivant: NSTextCheckingResult pour les numéros de téléphone
Réponses:
1 pour la réponse № 1vous ne pouvez pas utiliser NSDataDetector
sa disponible pour seulement [10_7,4_0]
C'est donc un moyen facile et approprié de valider un numéro de téléphone, comme ci-dessous, au lieu de NSDataDetector
NSString *string =@"121453315";
NSString *phoneRegex = @"^((\+)|(00))[0-9]{6,14}$";
NSPredicate *phoneTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", phoneRegex];
BOOL phoneValidates = [phoneTest evaluateWithObject:string];
0 pour la réponse № 2
Utilisez NSDataDetector pour les numéros de téléphone ordinaires etajoutez une expression régulière correspondant uniquement aux numéros à 14 chiffres + dont votre application a besoin pour ajouter les résultats manquants. NSDataDetector sera beaucoup plus précis que n'importe quel regex que vous écrivez ...