Cocoa从2个字符之间获取多个子字符串

时间:2013-03-10 00:07:53

标签: ios objective-c macos cocoa

我正在努力让某些字符在两个字符<>之间是不同的颜色。我尝试使用这种方法来做到这一点

-(NSString*)stringBetweenString:(NSString*)start andString:(NSString*)end fromString:(NSString*)other{
NSScanner* scanner = [NSScanner scannerWithString:other];
[scanner setCharactersToBeSkipped:nil];
[scanner scanUpToString:start intoString:NULL];
if ([scanner scanString:start intoString:NULL]) {
    NSString* result = nil;
    if ([scanner scanUpToString:end intoString:&result]) {
        return result;
    }
}
return nil;
}

这就是我想要的,但仅限于一个子串。我有多个在这些字符之间的子串,并希望它们都是不同的颜色。我用来改变颜色的方法就是这个

[self.tv setTextColor:[NSColor redColor] range:[s1 rangeOfString:[self stringBetweenString:@"<" andString:@">" otherString:s1] options:NSCaseInsensitiveSearch]];

其中self.tvNSTextView。如何获取多个子串的范围并更改这些子串的颜色?

0 个答案:

没有答案