1

文字列の文字をランダムに小文字または大文字に変更させたい(Xcodeで)。例:「example」から「ExaMpLe」、「eXAMPle」、ExAmPlE、またはこのようなランダムなもの..これを解決できますか?

ありがとう

4

3 に答える 3

2

-uppercaseStringサブストリングに対してand-lowercaseStringメソッドを使用するか、文字に対してtoupper()andtolower()関数を使用することができます。文字列を単純にフィルタリングする方法はありません。文字のanNSMutableStringまたはC配列のいずれかを使用する必要があります。

文字を大文字にするか小文字にするかを決定するために使用できるランダムなブール値を取得する方法については、この質問を参照してください。

于 2011-08-14T22:35:03.610 に答える
0

単語を文字の配列に分割し、乱数を使用してこれをループして大文字と小文字を判別し、配列をループした後、NSMutableStringを使用して文字を元に戻すことができます。

NSStringには、使用できるuppercaseStringメソッドとlowercaseStringメソッドがありました。

于 2011-08-14T22:34:45.073 に答える
0

NSStringlowercaseStringuppercaseStringメソッドの両方があります。文字列内の文字をサブ文字列のシーケンスとして反復処理し、ランダムなソースを使用して各文字の適切な小文字/大文字を呼び出し、結果を収集できます。何かのようなもの...

NSMutableString result = [NSMutableString string];
for (NSUInteger i = 0; i < [myString length]; i++)
{
  NSString *substring = [myString substringWithRange:NSMakeRange(i, 1)];
  [result appendString:(rand() % 2) ? [substring lowercaseString]
                                    : [substring uppercaseString]];
}

よりも優れたエントロピーのソースを好むかもしれrandませんが、例としてはそれで十分です(この場合をそのまま使用する場合は、シードすることを忘れないでください)。文字列が大きい場合は、のインプレースで実行できますNSMutableString

于 2011-08-14T22:36:56.020 に答える