iOS11 从通讯录中复制手机号码,会有特殊字符

今天有用户反应提示手机号码不合法,开始怀疑是有空格,但是之前已经做了去除空格的处理,一直不知道什么原因。后来让用户手动输入,没有提示不合法,问他是从哪里复制的(因为之前遇到过从MSN聊天记录中复制会带有特殊字符),用户说是从通讯录中。于是模拟用户操作,果然提示不合法。后来查看发现手机号码变成了”\u0000202d 17620378878 \u0000202c”。然后做过滤处理。

//ios11 从通讯录复制手机号码 前后有特殊符号
+ (NSString *)getSeparatedPhoneNumberWithString:(NSString *)phoneString {
    NSCharacterSet *characterSet = [NSCharacterSet characterSetWithCharactersInString:@"0123456789"];
    NSString * string = phoneString;
    NSCharacterSet *specCharacterSet = [characterSet invertedSet];
    NSArray * strArr = [string componentsSeparatedByCharactersInSet:specCharacterSet];
    return [strArr componentsJoinedByString:@""];
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容