随机大写-小写

发布于 2024-11-29 16:34:01 字数 118 浏览 3 评论 0原文

我想让一个字符串随机将字母更改为小写或大写(在 Xcode 中)。 例如:“example”到“ExaMpLe”或“eXAMPle”或ExAmPlE”或其他类似的随机内容。 热 我可以解决这个问题吗?

谢谢

I'd like to let a string change letters to lowercase or uppercase randomly(in Xcode).
for example: "example" to "ExaMpLe" or "eXAMPle" or ExAmPlE" or something else like this randomly..
hot can i solve this?

thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

护你周全 2024-12-06 16:34:01

您可以对子字符串使用 -uppercaseString-lowercaseString 方法,或者使用 toupper()tolower() 对字符起作用。没有办法简单地过滤字符串;您需要使用 NSMutableString 或 C 字符数组。

请参阅此问题了解如何获取随机布尔值,您可以使用该值来决定字符应该是大写还是小写。

You could either use the -uppercaseString and -lowercaseString methods on substrings, or use the toupper() and tolower() functions on characters. There's no way to simply filter a string; you'll want to use either an NSMutableString or a C array of characters.

See this question for how to get a random boolean value, which you can use to decide whether a character should be uppercase or lowercase.

物价感观 2024-12-06 16:34:01

NSString 同时具有 lowercaseStringuppercaseString 方法。您可以将字符串中的字符作为子字符串序列进行迭代,使用一些随机源对每个字符调用适当的小写/大写字母,并收集结果。类似...

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 上就地执行此操作。

NSString has both a lowercaseString and uppercaseString method. You can iterate over the characters in a string as a sequence of substrings, using some random source to call the appropriate lower/upper case on each of them, collecting the result. Something like...

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]];
}

You may prefer a better source of entropy than rand, but it'll do for an example (don't forget to seed it if you use this case as is). If the strings are large, you can do it in-place on an NSMutableString.

独﹏钓一江月 2024-12-06 16:34:01

您可以将单词分解为字母数组,并使用随机数循环确定大小写,循环数组后,只需使用 NSMutableString 将字母重新粘在一起。

NSString 有一个 uppercaseString 和 lowercaseString 方法可以使用。

You could break the word into an array of letters, and loop over this using a random number to determining case, after looping the array, simply stick the letters back together using NSMutableString.

NSString had a uppercaseString and lowercaseString methods you can use.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文