我有像“我的名字是”这样的 NSString。我想在最后一个空格后删除文本。表示我要删除的最后一个空格之后的任何文本。答案将是我的名字。如果有人知道该怎么做,请帮助我。
问问题
310 次
7 回答
8
要从您的字符串中获取我的名字,请使用以下命令
NSString *str = @"My name is";
NSRange range = [str rangeOfString:@" " options:NSBackwardsSearch];
NSString *str2 = [str substringToIndex:range.location];
于 2012-06-20T11:30:08.713 回答
3
NSString *str = @"My Name is";
NSArray *ary = [[NSArray alloc]init];
ary = [str componentsSeparatedByString:@" "];
str = [ary objectAtIndex:0];
str= [str stringByAppendingFormat:@" %@",[ary objectAtIndex:1]];
于 2012-06-20T12:09:57.067 回答
0
最简单的方法是使用“ NSMutableString
”而不是“ NSString
”,然后您可以执行“ deleteCharactersInRange:
”方法,其中“range”参数是您要删除的字符范围。
于 2012-06-20T11:27:27.790 回答
0
使用此代码例如
NSString *foo = @" untrimmed string ";
NSString *trimmed = [foo stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
于 2012-06-20T11:28:06.763 回答
0
这将起作用,尽管不是最好的方法
NSString *myName = [[NSString alloc] initWithString:@"My Name is."];
NSArray *splitComponents = [myName componentsSeparatedByString:@" "];
myName = [myName stringByReplacingOccurrencesOfString:[NSString stringWithFormat:@" %@",[splitComponents lastObject]] withString:@""];
于 2012-06-20T11:29:14.893 回答
0
你可以使用这个:
NSArray *arr = [yourString componentsSeparatedByString:@" "];
然后省略最后一个对象并创建新字符串。
于 2012-06-20T11:29:28.917 回答
0
NSString * str=@"My name is";
NSArray *parameters = [str componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@" "]];
NSLog(@"%@",[parameters description]);
NSRange rangeOfDash = [ str rangeOfString:[parameters lastObject]];
NSString * output = (rangeOfDash.location != NSNotFound) ? [str substringToIndex:rangeOfDash.location-1] : nil;
NSLog(@"answer%@",output);
于 2012-06-20T11:42:21.127 回答