修剪字符之间的空格

时间:2013-10-03 07:21:04

标签: objective-c string nsstring ios7 xcode5

我刚刚更新到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,它类似于"中间的点"这不等于一个完整的停止。

提前感谢。

4 个答案:

答案 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对象。

  • (NSData *)bitmapRepresentation 回报价值 以二进制格式编码接收器的NSData对象。

讨论 此格式适用于保存到文件或以其他方式传输或存档。

字符集的原始位图表示是2 ^ 16位的字节数组(即8192字节)。位置n处的位的值表示具有十进制Unicode值n的字符的字符集中的存在。要在原始位图表示中测试是否存在具有十进制Unicode值n的字符,请使用如下表达式:

所以试试这个

NSString *testString = @"  Eek! There are leading and trailing spaces  ";
NSString *trimmedString = [testString stringByTrimmingCharactersInSet:
                             [NSCharacterSet whitespaceAndNewlineCharacterSet]];