iOS 去除通讯录手机号码中的特殊字符

获取App中通讯录联系人到输入框中,发现有时自带有特殊字符类似于空格(其实不是空格字符),横线。通过 [text stringByReplacingOccurrencesOfString:@" " withString:@""]方法发现根本无法去除。

  • 方法一去除"空格",无效。可以去掉所有真正的空格。
NSLog(@"去除空格------------%@---------",[self getFormatText:@" 135 6666 6666 "]);
- (NSString *)getFormatText:(NSString*)string{
    NSString* text = string;
    return [text stringByReplacingOccurrencesOfString:@" " withString:@""];
}

去除空格------------135 6666 6666---------
  • 方法二去除"空格",无效。可以去掉所有的真正的空格。
NSLog(@"去除空格000000000000%@---------",[self removeSpaceAndNewline:@" 135 6666 6666 "]);
- (NSString *)removeSpaceAndNewline:(NSString *)str
{
    NSString *temp = [str stringByReplacingOccurrencesOfString:@" " withString:@""];
    temp = [temp stringByReplacingOccurrencesOfString:@"\r" withString:@""];
    temp = [temp stringByReplacingOccurrencesOfString:@"\n" withString:@""];
    return temp;
}
去除空格000000000000135 6666 6666---------
  • 方法三去除"空格",无效。可以去掉字符串两端的空格及回车。
    NSLog(@"去除空格111111111111%@---------",[self removeSpaceAndNewline1:@" 135 6666 6666 "]);
    - (NSString *)removeSpaceAndNewline1:(NSString *)str
{
    NSString *temp = [str stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
    NSString *text = [temp stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet ]];
    return text;
}
  • 方法四去除"空格",有效。可以去掉字符串中的空格。
NSLog(@"去除空格222222222222%@---------",[self removeSpaceAndNewline2:@" 135 6666 6666 "]);
- (NSString *)removeSpaceAndNewline2:(NSString *)str
{
    return [[str componentsSeparatedByCharactersInSet:[NSCharacterSet whitespaceCharacterSet]] componentsJoinedByString:@""];
}
去除空格22222222222213566666666---------
  • 方法五去除"空格",有效。去除字符串中所有除数字以外的字符。
    NSLog(@"去除空格333333333333%@---------",[self removeSpaceAndNewline3:@" 135 6666 6666 "]);
    - (NSString *)removeSpaceAndNewline3:(NSString *)str
{
    NSCharacterSet *setToRemove = [[ NSCharacterSet characterSetWithCharactersInString:@"0123456789"]invertedSet];
    NSString *strPhone  = [[str componentsSeparatedByCharactersInSet:setToRemove] componentsJoinedByString:@""];
    return strPhone;
}
去除空格33333333333313566666666---------
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容