Validate phone number ios

前端 未结 9 1745
温柔的废话
温柔的废话 2020-12-10 00:42

I need to validate an international phone number.

I know its difficult to validate an international phone number, so I\'m going to keep it simple:

+

相关标签:
9条回答
  • 2020-12-10 01:45

    In swift 4 -

    func ValidateMobileNumber(txtFeid : UITextField, strChk : String, range: NSRange) -> Bool {
    
        if txtFeid.text!.count >= 10 {
            return false
        } 
    
        let formatePre = "^((\\+)|(00))[0-9]{6,14}$"
        let resultPredicate : NSPredicate = NSPredicate(format: "SELF MATCHES %@",formatePre)
        return resultPredicate.evaluate(with: strChk)
    }
    
    0 讨论(0)
  • 2020-12-10 01:47

    Copy & Paste method to validate phone numbers:

    - (BOOL)validatePhone:(NSString *)phoneNumber
    {
        NSString *phoneRegex = @"^((\\+)|(00))[0-9]{6,14}$";
        NSPredicate *phoneTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", phoneRegex];
    
        return [phoneTest evaluateWithObject:phoneNumber];
    }
    

    or Open source Library for validating Phone Numbers

    https://github.com/iziz/libPhoneNumber-iOS

    0 讨论(0)
  • 2020-12-10 01:47

    txtlpmobile.text is the string(Mobile no ur gonna enter)

     int length = [self getLength:txtLpMobile.text];
                if(length == 10) {
                    if(range.length == 0)
                        return NO;
                }
                if(length == 3){
                    NSString *num = [self formatNumber:txtLpMobile.text];
                    txtLpMobile.text = [NSString stringWithFormat:@"(%@) ",num];
    
                    if(range.length > 0) {
                        txtLpMobile.text = [NSString stringWithFormat:@"%@",[num substringToIndex:3]];
    
                    }
                } else if(length == 6) {
                    NSString *num = [self formatNumber:txtLpMobile.text];
                    txtLpMobile.text = [NSString stringWithFormat:@"(%@) %@-",[num  substringToIndex:3],[num substringFromIndex:3]];
                    if(range.length > 0) {
                        txtLpMobile.text = [NSString stringWithFormat:@"(%@) %@",[num substringToIndex:3],[num substringFromIndex:3]];
                    }
                }
    
                NSUInteger newLength;
                newLength = [txtLpMobile.text length] + [string length] - range.length;
                NSCharacterSet *cs = [[NSCharacterSet characterSetWithCharactersInString:NUMBERS_ONLY] invertedSet];
                NSString *filtered = [[string componentsSeparatedByCharactersInSet:cs] componentsJoinedByString:@""];
                return (([string isEqualToString:filtered])&&(newLength <= CHARACTER_LIMIT));
    

    for formatting number

    -(NSString*)formatNumber:(NSString*)mobileNumber
    {
        mobileNumber = [mobileNumber stringByReplacingOccurrencesOfString:@"(" withString:@""];
        mobileNumber = [mobileNumber stringByReplacingOccurrencesOfString:@")" withString:@""];
        mobileNumber = [mobileNumber stringByReplacingOccurrencesOfString:@" " withString:@""];
        mobileNumber = [mobileNumber stringByReplacingOccurrencesOfString:@"-" withString:@""];
        mobileNumber = [mobileNumber stringByReplacingOccurrencesOfString:@"+" withString:@""];
    
        int length = [mobileNumber length];
        if(length > 10)
        {
            mobileNumber = [mobileNumber substringFromIndex: length-10];
        }
        return mobileNumber;
    }
    

    for getting length

    -(int)getLength:(NSString*)mobileNumber
    {
        mobileNumber = [mobileNumber stringByReplacingOccurrencesOfString:@"(" withString:@""];
        mobileNumber = [mobileNumber stringByReplacingOccurrencesOfString:@")" withString:@""];
        mobileNumber = [mobileNumber stringByReplacingOccurrencesOfString:@" " withString:@""];
        mobileNumber = [mobileNumber stringByReplacingOccurrencesOfString:@"-" withString:@""];
        mobileNumber = [mobileNumber stringByReplacingOccurrencesOfString:@"+" withString:@""];
    
        int length = [mobileNumber length];
    
        return length;
    }
    
    0 讨论(0)
提交回复
热议问题