【发布时间】:2010-10-29 20:58:06
【问题描述】:
NSString *myString = @"A B C D E F G";
我想删除空格,所以新字符串是“ABCDEFG”。
【问题讨论】:
标签: objective-c nsstring
NSString *myString = @"A B C D E F G";
我想删除空格,所以新字符串是“ABCDEFG”。
【问题讨论】:
标签: objective-c nsstring
如果您想一次支持多个空格,或支持任何空格,您可以这样做:
NSString* noSpaces =
[[myString componentsSeparatedByCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]
componentsJoinedByString:@""];
【讨论】:
A B C D E F。
以上都可以正常工作。但是正确的方法是这样的:
yourString = [yourString stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
它将像 TRIM 方法一样工作。它将删除所有前后空格。
谢谢
【讨论】:
[NSCharacterSet whitespaceCharacterSet] 和[NSCharacterSet whitespaceAndNewlineCharacterSet]。
你可以试试这个
- (NSString *)stripRemoveSpaceFrom:(NSString *)str {
while ([str rangeOfString:@" "].location != NSNotFound) {
str = [str stringByReplacingOccurrencesOfString:@" " withString:@""];
}
return str;
}
希望对你有所帮助。
【讨论】:
如果字符串是可变的,那么您可以使用以下形式对其进行原地转换:
[string replaceOccurrencesOfString:@" "
withString:@""
options:0
range:NSMakeRange(0, string.length)];
如果您希望结果是输入字符串的可变实例,这也很有用:
NSMutableString * string = [concreteString mutableCopy];
[string replaceOccurrencesOfString:@" "
withString:@""
options:0
range:NSMakeRange(0, string.length)];
【讨论】:
你可以使用:
NSString *stringWithoutSpaces = [myString
stringByReplacingOccurrencesOfString:@" " withString:@""];
【讨论】:
取自NSString
stringByReplacingOccurrencesOfString:withString:
返回一个新字符串,其中接收器中所有出现的目标字符串都被另一个给定的字符串替换。
- (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target withString:(NSString *)replacement
参数
目标
The string to replace.
替换
The string with which to replace target.
返回值
一个新字符串,其中接收器中所有出现的目标都被替换替换。
【讨论】: