我刚刚更新到ios 7 sdk,我想修剪/替换字符串字符之间的空格,从而从ABAddressBook中取出数字。
我尝试过使用替换" "用""下面的代码,但这段代码似乎不适用于ios7 sdk,顺便说一句,它在ios 6 sdk中工作正常。
NSString *TrimmedNumberField = [self.numberField.text
stringByReplacingOccurrencesOfString:@" " withString:@""];
我还有其他方法可以在IOS 7中完成吗?
修改
这是我尝试过的电话号码类型。
输入:"+65 12 345 6789"
我从NSLog得到的输出是" 12 345 6789"
我意识到当我添加到NSDictionary并在NSLog中查看它时,它似乎包含一个unix代码表示\ u00a0,它类似于"中间的点"这不等于一个完整的停止。
提前感谢。
答案 0 :(得分:1)
从here
找到答案phoneNumber = [phoneNumber stringByReplacingOccurencesOfString:@"." withString:@""];
//其中@“。”是通过输入选项 + 空格键
创建的该号码是从ABAddressbook中提取的。
答案 1 :(得分:0)
只要有任何
,您就可以遍历字符串并删除空格NSString *someString = @"A string with multiple spaces and other whitespace.";
NSMutableString *mutableCopy = [someString mutableCopy];
// get first occurance of whitespace
NSRange range = [mutableCopy rangeOfCharacterFromSet:[NSCharacterSet whitespaceCharacterSet]];
// If there is a match for the whitespace ...
while (range.location != NSNotFound) {
// ... delete it
[mutableCopy deleteCharactersInRange:range];
// and get the next whitespace
range = [mutableCopy rangeOfCharacterFromSet:[NSCharacterSet whitespaceCharacterSet]];
}
// no more whitespace. You can get back to an immutable string
someString = [mutableCopy copy];
上面字符串的结果是Astringwithmultiplespacesandotherwhitespace.
答案 2 :(得分:-1)
试试这个:
NSString *str = @" untrimmed string ";
NSString *trimmed = [str stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
答案 3 :(得分:-2)
试试这个
[yourString stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
whitespaceCharacterSet iOS的Apple文档说
返回以二进制格式编码接收器的NSData对象。
讨论 此格式适用于保存到文件或以其他方式传输或存档。
字符集的原始位图表示是2 ^ 16位的字节数组(即8192字节)。位置n处的位的值表示具有十进制Unicode值n的字符的字符集中的存在。要在原始位图表示中测试是否存在具有十进制Unicode值n的字符,请使用如下表达式:
所以试试这个
NSString *testString = @" Eek! There are leading and trailing spaces ";
NSString *trimmedString = [testString stringByTrimmingCharactersInSet:
[NSCharacterSet whitespaceAndNewlineCharacterSet]];