我想在标签中显示从服务器返回的文本。服务器返回类似*English\nMalay\nTamil\n*
的内容。
目前我使用:
stringByReplacingOccurrencesOfString:@"\n" withString:@", "
用逗号替换\n
。但是如何删除最后一个\n
?
现在我在标签上的文字显示:
“英语,马来语,泰米尔语”,
我想得到像
“英语,马来语,泰米尔语”
答案 0 :(得分:3)
尝试这样。
NSString *string = @"English\nMalay\nTamil\n";
//Make array from string
NSMutableArray *array = [NSMutableArray arrayWithArray:[string componentsSeparatedByString:@"\n"]];
//Remove all empty object from array
[array removeObject:@""];
//Join array object and make string
NSString *newString = [array componentsJoinedByString:@", "];
NSLog(@"%@",newString);
答案 1 :(得分:0)
您可以使用以下代码
来完成此操作NSString *string=@"English\nMalay\nTamil\n";
NSMutableArray *arryLanguagge = [[string componentsSeparatedByString: @"\n"] mutableCopy];
[arryLanguagge removeObject:@""];
NSString *strLanguaage=[arryLanguagge componentsJoinedByString:@","];
NSLog(@"%@",strLanguaage);
答案 2 :(得分:0)
为什么不在使用\n
进行替换之前删除上一个substringToIndex
?
NSString *mString = @"English\nMalay\nTamil\n";
NSLog(@"mString===before===%@", mString);
mString = [mString substringToIndex:mString.length-1];
mString = [mString stringByReplacingOccurrencesOfString:@"\n" withString:@", "];
NSLog(@"mString===after===%@", mString);
输出
mString===before===English
Malay
Tamil
mString===after===English, Malay, Tamil