string eng_rus_alphavit = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz"; Random rnd = new Random((int)DateTime.Now.Ticks); /// <summary> /// /// </summary> public string RndSym(string word) { if (word.Length > 2) { string ret = ""; // int[] index = new int[word.Length]; for (int i = 0; i < word.Length; i++) index[i] = -1; index[0] = 0; index[word.Length - 1] = word.Length - 1; int v = rnd.Next(1, word.Length - 1); for (int i = 1; i < word.Length - 1; i++) { while (index[v] != -1) v = rnd.Next(1, word.Length - 1); index[v] = i; } // for (int i = 0; i < word.Length; i++) { ret += word[index[i]]; } return ret; } return word; } /// <summary> /// /// </summary> private string TransformText(string text) { int begin; string nword; char[] array = text.ToCharArray(); for (int i = 0; i < array.Length; i++) { if (eng_rus_alphavit.Contains(array[i].ToString())) { begin = i; while (eng_rus_alphavit.Contains(array[i].ToString()) && (++i < array.Length)) ; nword = RndSym(text.Substring(begin, i - begin)); // for (int j = begin; j < i; j++) { array[j] = nword[j - begin]; } } } string ret = ""; foreach (char c in array) ret += c; return ret; }
Source: https://habr.com/ru/post/122163/
All Articles