IOS:NSString的留一些空间

问题描述:

我有一个特别的问题:IOS:NSString的留一些空间

在的NSString

我有这个值“ABCDEF ghil” 我要检查,如果第一个字符是一个空间,并删除它(与stringbyreplacing ... ?) 和其他空间(从“f”到“g”)我想插入一个“ - ”

你能帮我吗?

如果它可能有帮助;我从文本字段中取出该字符串...

以下内容将按照您的要求进行操作,但需要注意的是,它将修剪尾随空格以及引导空格,而不仅仅是单个前导或尾随空格字符。

NSString *original = @" abcdef ghil"; 
NSString *trimmed = [original stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]; 
NSString *final = [trimmed stringByReplacingOccurrencesOfString:@" " 
                withString:@"-"]; 

如果你只是想删除前导空格,那么你或许应该看看这个前面的问题:Cocoa - Trim all leading whitespace from NSString

更新:如果你真的只是想在字符串的开头删除单个空间那么下面应该为你工作:

NSString *original = @" abcdef ghil"; 

NSString *trimmed = [original stringByReplacingOccurrencesOfString:@" " 
                 withString:@"" 
                  options:0 
                  range:NSMakeRange(0, 1)]; 

NSString *final = [trimmed stringByReplacingOccurrencesOfString:@" " 
                withString:@"-"]; 

删除第一个白色的空间,您可以使用:

- (NSString *)stringByReplacingCharactersInRange:(NSRange)range withString:(NSString *)replacement 

用NSMakeRange(0,1)创建的范围,这是位置0和长度1,您将用“”替换第一个“”。

随着这个,你可以简单地做输出:

- (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target withString:(NSString *)replacement 

有了这个,你将全部替换“”与“ - ”。