我可以用更少的代码来做这件事吗?
urlString = [urlString stringByReplacingOccurrencesOfString:@" " withString:@""];
urlString = [urlString stringByReplacingOccurrencesOfString:@"\t" withString:@""];
urlString = [urlString stringByReplacingOccurrencesOfString:@"\n" withString:@""];
urlString = [urlString stringByReplacingOccurrencesOfString:@"\r" withString:@""];
答案 0 :(得分:4)
如果您只想修剪字符串开头和结尾的空格和空白行,可以使用
urlString = [urlString stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
这包括您提供的所有示例。
答案 1 :(得分:0)
您可以使用正则表达式从字符串中删除空格,其中空格位于字符串中的任何位置。
NSString *removeWhitespaceRegex = @"\\s";
NSError *error = NULL;
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:removeWhitespaceRegex
options:NSRegularExpressionCaseInsensitive
error:&error];
NSString *string = @"Remove whitespace from this string.";
NSString *modifiedString = [regex stringByReplacingMatchesInString:string
options:0
range:NSMakeRange(0, [string length])
withTemplate:@""];
NSLog(@"%@", modifiedString);
只是一个免责声明,上面的代码是用心脏写的,快速查找一些方法,有些东西可能不起作用,但它背后的想法应该。
第二种,可能更快的方法是使用NSCharacterSet
,例如JRG-Developer提到的,但这将删除仅尾随空格。