我想只删除下面字符串中的第一个空格。
NSString *str = @"IF_Distance (GET_Mi mi=km*1.4,STRING1,STRING2)";
注意:IF_Distance之后有一个空格,之后有另一个空格 GET_Mi。在IF_Distance之后我无法移除空格。
答案 0 :(得分:2)
使用rangeOfString:
找到第一个空格,然后使用stringByReplacingCharactersInRange:withString:
将其替换为空字符串。
答案 1 :(得分:0)
使用以下代码删除空格。
NSString *str = @"IF_Distance (GET_Mi mi=km*1.4,STRING1,STRING2)";
NSString *secondString = [str stringByReplacingOccurrencesOfString:@"IF_Distance " withString:@"IF_Distance"];
答案 2 :(得分:0)
试试这个:
NSString *str = @"IF_Distance (GET_Mi mi=km*1.4,STRING1,STRING2)";
NSString *firstStringContainingSpace = [[str componentsSeparatedByCharactersInSet:[NSCharacterSet whitespaceCharacterSet]] firstObject];//firstStringContainingSpace = IF_Distance
str = [str stringByReplacingCharactersInRange:[str rangeOfString:[NSString stringWithFormat:@"%@ ",firstStringContainingSpace]] withString:firstStringContainingSpace];
输出: str = @“IF_Distance(GET_Mi mi = km * 1.4,STRING1,STRING2)”;
答案 3 :(得分:-1)
您可以使用以下代码删除第一个空格:
首先使用rangeOfString:
查找空格,然后使用stringByReplacingCharactersInRange:withString:
方法删除。
像,
NSString *str = @"IF_Distance (GET_Mi mi=km*1.4,STRING1,STRING2)";
NSString *strSpace = @" ";
NSRange range = [str rangeOfString:strSpace];
NSString *strFinal;
if (NSNotFound != range.location) {
strFinal = [str stringByReplacingCharactersInRange:range withString:@""];
}
答案 4 :(得分:-1)
如果您正在寻找更通用的方式 - 这是它的变体:
- (NSString *)removeWhitespaces:(NSString *)string {
NSMutableArray * stringComponents = [[string componentsSeparatedByCharactersInSet:[NSCharacterSet whitespaceCharacterSet]] mutableCopy];
NSString * fStringComponent = [stringComponents firstObject];
[stringComponents removeObject:fStringComponent];
return [fStringComponent stringByAppendingString:[stringComponents componentsJoinedByString:@" "]];
}