我从本地通讯簿复制了一个数字,它的开头和结尾可能都有UTF-8字符

NSString *phoneNumber = @"‭+488778689898‬";
NSLog(@"phonenumber.length --> %lu", (unsigned long)phoneNumber.length); //Prints 15
BOOL hasPlusPrefix = [phoneNumber hasPrefix:@"+"];
NSLog(@"hasPrefix -->%d", hasPlusPrefix); // Prints 0


当我使用调试器调试号码时,它显示
ios - 从本地联系人复制号码会产生奇怪的结果-LMLPHP

如何从NSString中删除字符的开头和结尾?

谢谢

最佳答案

您在字符串中看到的代码用于处理文本方向。 \U202d是“左向右覆盖”字符,\U202c是“ POP方向格式化”字符。

您不能使用whitespaceAndNewlineCharacterSet删除它们,因为它们不是空格。但是它们是控制代码,可以使用controlCharacterSet删除。

phoneNumber = [phoneNumber stringByTrimmingCharactersInSet:[NSCharacterSet controlCharacterSet]];

关于ios - 从本地联系人复制号码会产生奇怪的结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47457469/

10-10 20:58