1

NSCaseInsensitiveSearchでは動作しないようですNSString:rangeOfCharacterFromSet。誰かが理由を説明できますか?それは正しい行動ですか?

NSString *string = @"James Bond Always Rocks";    
NSRange range = [string rangeOfCharacterFromSet:[NSCharacterSet characterSetWithCharactersInString:@"J"] options:NSCaseInsensitiveSearch];
NSLog(@"range->%@",NSStringFromRange(range)); //This prints range->{0, 1}

NSString *string = @"James Bond Always Rocks";    
NSRange range = [string rangeOfCharacterFromSet:[NSCharacterSet characterSetWithCharactersInString:@"j"] options:NSCaseInsensitiveSearch];
NSLog(@"range->%@",NSStringFromRange(range)); //This prints range->{2147483647, 0}
4

1 に答える 1

3

ドキュメントから: 「オプション: 検索オプションを指定するマスク。次のオプションは、C ビットごとの OR 演算子と組み合わせて指定できます: NSAnchoredSearch、NSBackwardsSearch。」したがって、正しい動作のように見えますが、なぜこれら 2 つのオプションしか適用できないのかはわかりません。

于 2014-03-14T13:31:15.087 に答える