8

NSStringから次のように1文字を抽出するとします。

[@"This is my String" characterAtIndex:0]

取得した文字が小文字か大文字かを確認するにはどうすればよいですか?

どんなアディビスにも感謝します!

4

4 に答える 4

34
BOOL isUppercase = [[NSCharacterSet uppercaseLetterCharacterSet] characterIsMember:[s characterAtIndex:0]];
于 2011-06-15T10:07:38.907 に答える
5
unichar ch = [@"This is my String" characterAtIndex:0];

if (ch >= 'A' && ch <= 'Z') {
    // upper case
} else if (ch >= 'a' && ch <= 'z') {
   // lower case
}

これは英語のアルファベットでのみ機能することに注意してください。

于 2011-06-15T10:10:43.540 に答える
2
NSString *firstChar = [NSString stringWithFormat:@"%c", [@"This is my String" characterAtIndex:0]];

BOOL isUpperCase = [firstChar isEqualToString:[firstChar uppercaseString]];

文字に大文字/小文字のバリアント(番号1、2など)がない場合、isUpperCaseは常にYESを返すことに注意してください。

于 2014-05-21T04:26:10.607 に答える
-1

Objective Cはわかりませんが、正規表現を使用できます。[az]と一致する場合は、小文字です。[AZ]と一致する場合は大文字です。

于 2011-06-15T10:06:58.230 に答える