【发布时间】:2017-05-14 21:51:57
【问题描述】:
我有一个机器人来解决我的不和谐问题,我正在添加一个命令来发布你最近在 twitter 上看到的海绵宝宝表情包之一。我基本上必须转换用户输入的字符串,例如This is the string they would enter,它会将其转换为类似THis iS ThE sTRinG thEy WOulD EnTEr
我基本上需要将该字符串中的每个字符随机设置为大写或小写。 这就是我要做的,它打印出原始字符串而不是转换后的字符串。
commands.CreateCommand("spongememe").Parameter("message", ParameterType.Multiple).Do(async (e) =>
{
string message = "";
for (int i = 0; i < e.Args.Length; i++)
{
message += e.Args[i].ToString() + " ";
}
char[] array = message.ToCharArray();
for(int i = 0; i < array.Length; i++)
{
if (rnd.Next(0, 2) == 1)
Char.ToUpper(array[i]);
else
{
Char.ToLower(array[i]);
}
}
string newMessage = String.Join("", array);
await e.Channel.SendMessage(newMessage);
});
任何有关如何随机选择设置为大写和小写的字符的帮助将不胜感激。
【问题讨论】:
-
Char.ToLower 返回新值。你必须收集那些。使用 stringbuilder 或预分配的 char 数组
-
array[i] = Char.ToUpper(array[i]); -
请决定:您要设置每个字符还是一些随机字符?
-
啊,我明白了,现在完美了,谢谢!