Transliteration.cs 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace LoginGenerator.Models
  7. {
  8. public class Transliteration
  9. {
  10. readonly Dictionary<char, string> characters = new Dictionary<char, string>
  11. {
  12. { 'А', "A" }, { 'а', "a" },
  13. { 'Б', "B" }, { 'б', "b" },
  14. { 'В', "V" }, { 'в', "v" },
  15. { 'Г', "G" }, { 'г', "g" },
  16. { 'Д', "D" }, { 'д', "d" },
  17. { 'Е', "E" }, { 'е', "e" },
  18. { 'Ё', "E" }, { 'ё', "e" },
  19. { 'Ж', "Zh" }, { 'ж', "zh" },
  20. { 'З', "Z" }, { 'з', "z" },
  21. { 'И', "I" }, { 'и', "i" },
  22. { 'Й', "I" }, { 'й', "i" },
  23. { 'К', "K" }, { 'к', "k" },
  24. { 'Л', "L" }, { 'л', "l" },
  25. { 'М', "M" }, { 'м', "m" },
  26. { 'Н', "N" }, { 'н', "n" },
  27. { 'О', "O" }, { 'о', "o" },
  28. { 'П', "P" }, { 'п', "p" },
  29. { 'Р', "R" }, { 'р', "r" },
  30. { 'С', "S" }, { 'с', "s" },
  31. { 'Т', "T" }, { 'т', "t" },
  32. { 'У', "U" }, { 'у', "u" },
  33. { 'Ф', "F" }, { 'ф', "f" },
  34. { 'Х', "Kh" }, { 'х', "kh" },
  35. { 'Ц', "Tc" }, { 'ц', "tc" },
  36. { 'Ч', "Ch" }, { 'ч', "ch" },
  37. { 'Ш', "Sh" }, { 'ш', "sh" },
  38. { 'Щ', "Shch" }, { 'щ', "shch" },
  39. { 'Ъ', "" }, { 'ъ', "" },
  40. { 'Ы', "Y" }, { 'ы', "y" },
  41. { 'Ь', "" }, { 'ь', "" },
  42. { 'Э', "E" }, { 'э', "e" },
  43. { 'Ю', "Iu" }, { 'ю', "iu" },
  44. { 'Я', "Ia" }, { 'я', "ia" },
  45. { ' ', " " }, { '.', "." }
  46. };
  47. public string Execute(string originalString)
  48. {
  49. string transliteratedString = "";
  50. foreach (char c in originalString)
  51. transliteratedString += characters[c];
  52. return transliteratedString;
  53. }
  54. }
  55. }