可能重复:
iphone sdk - Remove all characters except for numbers 0-9 from a string
我的电话号码为
mynumber = @“(334)687-6619”;
我正在使用
NSString *phoneURLString = [NSString stringWithFormat:@"tel:%@", phoneNumber];
NSURL *phoneURL = [NSURL URLWithString:phoneURLString];
[[UIApplication sharedApplication] openURL:phoneURL];
拨打电话。 但由于“(”,“)”我的方法无法拨打电话。
请建议我做一个正确的字符串
之类的东西“1-800-555-1212”或类似的东西。
由于
答案 0 :(得分:5)
您可以使用
NSString *s = @"(334)687-6619";
NSCharacterSet *doNotWant = [NSCharacterSet characterSetWithCharactersInString:@"("];
s = [[s componentsSeparatedByCharactersInSet: doNotWant] componentsJoinedByString: @""];
s = [s stringByReplacingOccurrencesOfString:@")" withString:@"-"];
NSLog(@"%@", s);
因此,它将取代"("""& replace")"用" - "。
感谢。
答案 1 :(得分:3)
使用此代码
NSString *str = @"(334)687-6619";
str = [str stringByReplacingCharactersInRange:NSMakeRange(0, 1) withString:@""];
str = [str stringByReplacingCharactersInRange:NSMakeRange(3, 1) withString:@"-"];
NSLog(@"%@",str);
OUTPUT是: 334-687-6619
答案 2 :(得分:2)
从字符串中删除字符:
NSCharacterSet *set = [NSCharacterSet characterSetWithCharactersInString:@"()"];
NSArray *comps = [string componentsSeparatedByCharactersInSet:set];
NSString *newString = [comps componentsJoinedByString:@""];