fork download
  1. use strict;
  2. use warnings;
  3. use utf8;
  4.  
  5. binmode(STDOUT, ":utf8");
  6.  
  7. my %flipTable = (
  8. "a" => "\x{0250}",
  9. "b" => "q",
  10. "c" => "\x{0254}",
  11. "d" => "p",
  12. "e" => "\x{01DD}",
  13. "f" => "\x{025F}",
  14. "g" => "\x{0183}",
  15. "h" => "\x{0265}",
  16. "i" => "\x{0131}",
  17. "j" => "\x{027E}",
  18. "k" => "\x{029E}",
  19. "l" => "|",
  20. "m" => "\x{026F}",
  21. "n" => "u",
  22. "o" => "o",
  23. "p" => "d",
  24. "q" => "b",
  25. "r" => "\x{0279}",
  26. "s" => "s",
  27. "t" => "\x{0287}",
  28. "u" => "n",
  29. "v" => "\x{028C}",
  30. "w" => "\x{028D}",
  31. "x" => "x",
  32. "y" => "\x{028E}",
  33. "z" => "z",
  34. "A" => "\x{0250}",
  35. "B" => "q",
  36. "C" => "\x{0254}",
  37. "D" => "p",
  38. "E" => "\x{01DD}",
  39. "F" => "\x{025F}",
  40. "G" => "\x{0183}",
  41. "H" => "\x{0265}",
  42. "I" => "\x{0131}",
  43. "J" => "\x{027E}",
  44. "K" => "\x{029E}",
  45. "L" => "|",
  46. "M" => "\x{026F}",
  47. "N" => "u",
  48. "O" => "o",
  49. "P" => "d",
  50. "Q" => "b",
  51. "R" => "\x{0279}",
  52. "S" => "s",
  53. "T" => "\x{0287}",
  54. "U" => "n",
  55. "V" => "\x{028C}",
  56. "W" => "\x{028D}",
  57. "X" => "x",
  58. "Y" => "\x{028E}",
  59. "Z" => "z",
  60. "." => "\x{02D9}",
  61. "[" => "]",
  62. "'" => ",",
  63. "," => "'",
  64. "(" => ")",
  65. "{" => "}",
  66. "?" => "\x{00BF}",
  67. "!" => "\x{00A1}",
  68. "\"" => ",",
  69. "<" => ">",
  70. "_" => "\x{203E}",
  71. ";" => "\x{061B}",
  72. "\x{203F}" => "\x{2040}",
  73. "\x{2045}" => "\x{2046}",
  74. "\x{2234}" => "\x{2235}",
  75. "\r" => "\n",
  76. " " => " "
  77. );
  78.  
  79. while ( <> ) {
  80. my $string = reverse( $_ );
  81. while ($string =~ /(.)/g) {
  82. print $flipTable{$1};
  83. }
  84. print qq(\n);
  85. }
Success #stdin #stdout 0s 3744KB
stdin
some text
stdout
ʇxǝʇ ǝɯos