iPhone消除获取的电话号码中的其他字符

来源:互联网 发布:win10怎么优化系统 编辑:程序博客网 时间:2024/04/28 23:29
 NSString *originalString = @"(123) 123123 abc";
NSMutableString *strippedString = [NSMutableString
        stringWithCapacity:originalString.length];

NSScanner *scanner = [NSScanner scannerWithString:originalString];
NSCharacterSet *numbers = [NSCharacterSet
        characterSetWithCharactersInString:@"0123456789"];

while ([scanner isAtEnd] == NO) {
  NSString *buffer;
  if ([scanner scanCharactersFromSet:numbers intoString:&buffer]) {
    [strippedString appendString:buffer];
  }
  // --------- Add the following to get out of endless loop
  else {
     [scanner setScanLocation:([scanner scanLocation] + 1)];
  }    
  // --------- End of addition
}

NSLog(@"%@", strippedString); // "123123123"
原创粉丝点击