大文字と小文字を区別せずindexOfObject:
に、NSArray
またはobjectForKey:
ofを使用する方法はありますか?NSDictionary
したがって、配列がある場合:
@[@"Apple", @"Banana", @"Peach"]
それで
[array indexOfObject:@"apple"]
私に0を与えることができますか?
ありがとう
大文字と小文字を区別せずindexOfObject:
に、NSArray
またはobjectForKey:
ofを使用する方法はありますか?NSDictionary
したがって、配列がある場合:
@[@"Apple", @"Banana", @"Peach"]
それで
[array indexOfObject:@"apple"]
私に0を与えることができますか?
ありがとう
これは、余分な作業が必要な場合に可能であり、悪い考えです。大文字と小文字の区別は人間の考えです。辞書のキーが文字列の場合 (通常はそうあるべきです)、Apple と Apple の違いは、異なる unichar と異なるハッシュ値です。
これを難しい方法で行おうとすると、パフォーマンスが低下します。
そうは言っても、それを行う正当な理由があるかもしれません。その場合、すべてのキーの配列を取得し、caseInsensitiveCompare で containsObject を実行してから、インデックス マッチングでオブジェクトを使用できます。しかし、まだ何も見つからないかもしれません。
キーがユーザー入力や JSON などから来ている場合は、最初にそれらをサニタイズするか、正規化することをお勧めします。