检测NSString末尾的4个空格的序列

时间:2014-06-12 15:17:49

标签: ios objective-c nsstring

NSString的第一行的最末端检测4个空格序列的最佳方法是什么?

NSString *testString = @"Something    \nblah blah blah\nmore stuff here";
NSString *firstLine = [[testString componentsSeparatedByString: @"\n"] objectAtIndex:0];
NSRange range = [firstLine rangeOfString:@"    " options:NSRegularExpressionSearch];
BOOL found = range.location != NSNotFound;

这几乎可以解决问题,但我如何确保这个四个空格的序列位于我的字符串的最后?

1 个答案:

答案 0 :(得分:6)

您正在寻找方法- (BOOL)hasSuffix:(NSString *)aString

if ([myString hasSuffix:@"    "]) {
    NSLog(@"myString had the suffix!");
}

The documentation声明这对NSAnchoredSearch | NSBackwardsSearch很方便,因此您也可以将其表达为:

if (NSNotFound != [myString rangeOfString:@"    " options:NSAnchoredSearch | NSBackwardsSearch].location) {
    NSLog(@"myString had the suffix!");
}

但这显然不那么具有表现力。