Como obter NSRange (s) para uma substring em NSString? [duplicado]
Esta questão já tem uma resposta aqui:
Como obter todos os NSRange de um caractere particular em um NSString? 4 respostasNSString *str = @" My name is Mike, I live in California and I work in Texas. Weather in California is nice but in Texas is too hot...";
Como posso percorrer este NSString e obter NSRange para cada ocorrência de "Califórnia", eu quero o NSRange porque eu gostaria de mudar sua cor na string NSAttributed.
NSRange range = NSMakeRange(0, _stringLength);
while(range.location != NSNotFound)
{
range = [[attString string] rangeOfString: @"California" options:0 range:range];
if(range.location != NSNotFound)
{
range = NSMakeRange(range.location + range.length, _stringLength - (range.location + range.length));
[attString addAttribute:NSForegroundColorAttributeName value:_green range:range];
}
}