从Wordlist创建各种

时间:2018-09-17 09:07:34

标签: c#

我想创建一个密码列表。

到目前为止,它仍然有效,但我的列表仅包含D?t1g3+T%J之类的单词。

现在,我想更有意义地创建单词。 我有一个包含香蕉服务台之类的单词的列表。 如何随机更改拼写,添加数字和特殊字符?

例如:

  

“香蕉”->“ baNana123”

1 个答案:

答案 0 :(得分:0)

好吧,我刚刚想到了这个。

string foo = "banana";
            List<string> chars = new List<string>();
            Random rnd = new Random();
            string newPassword = "";
            for (int i = 0; i < foo.Length; i++)
            {
                chars.Add(foo[i].ToString());
            }
            foreach (var boo in chars)
            {
                var randomNum = rnd.Next(0, 2);
                Debug.WriteLine(randomNum);
                if (randomNum == 0)
                {
                    newPassword = newPassword + boo.ToUpper();
                }
                else
                {
                    newPassword = newPassword + boo.ToLower();
                }
            }
            Debug.WriteLine(newPassword);

它的作用:1)将字符串(在我的情况下为“香蕉”)分成单个字符

2)为每个字符程序随机生成1或0。基于此,我只是将其转换为小写或大写。

您所要做的就是为算法提供字符串。最后,我可以执行类似的操作。

int howMany = rnd.Next(1, 20); //1 to 19 numbers, you can set that manually
            for (int i = 0; i < howMany; i++)
            {
                newPassword = newPassword + rnd.Next(0, 10);
            }
            Debug.WriteLine(newPassword);

对我来说最后的结果:BanANA6469242684