読者です 読者をやめる 読者になる 読者になる

雑記 - otherwise

最近はDQ10しかやっていないダメ技術者がちまちまと綴る雑記帳

続・文字列変換(ネタ) Perl 編

Perl

それ Perl なら(以下略

sub convert {
  my @block = split /#/, $_[0], 2;
  $block[0] =~ tr/0-9A-Z/9876543210a-z/;
  return join '#', @block;
}

再帰版。

sub convert2 {
  my $c = substr $_[0], 0, 1;
  return $c eq '#' ?  $_[0] : do { $c =~ tr/0-9A-Z/9876543210a-z/; length $_[0] == 1 ? $c : $c . &convert2(substr $_[0], 1); };
}