どこかにコンビニエンスクラスがあると思います
NSArray *alphabet = [SomeClass lowerCaseAlphabet];
毎回書き出す代わりに。そのようなクラスはありますか?
どこかにコンビニエンスクラスがあると思います
NSArray *alphabet = [SomeClass lowerCaseAlphabet];
毎回書き出す代わりに。そのようなクラスはありますか?
はい、ドキュメントをすばやく検索すると、次のコードを使用してコードが表示されますNSMutableCharacterSet
。
addCharactersInRange:Unicode値が指定された範囲内にある文字をレシーバーに追加します。
- (void)addCharactersInRange:(NSRange)aRange
パラメーター:
aRange:追加する文字の範囲。aRange.locationは、追加する最初の文字の値です。aRange.location + aRange.length–1は最後の値です。aRange.lengthが0の場合、このメソッドは効果がありません。
討論
このコードの抜粋は、文字セットに小文字の英語のアルファベット文字を追加します。
NSMutableCharacterSet *aCharacterSet = [[NSMutableCharacterSet alloc] init];
NSRange lcEnglishRange;
lcEnglishRange.location = (unsigned int)'a';
lcEnglishRange.length = 26;
[aCharacterSet addCharactersInRange:lcEnglishRange];
//....
[aCharacterSet release];
可用性:
iOS2.0以降で利用できます。
/////////
個人的な意見:これらのことにしばらく立ち往生している場合は、自分で何かを作成する方が速いことがよくあります。この場合NSArray
、オブジェクト@ "a"、...、@ "z"を使用してインスタンスを作成しても、失うものはほとんどありません。26文字または52文字の配列はそれほど大きくありません。
NSMutableCharacterSet * cset = [NSMutableCharacterSet lowercaseLetterCharacterSet];
これがローカライズ可能かどうかはわかりません。