Fato divertido do Ruby: você pode fazer gsub com um bloco ou hash.
Depois de definir um hash,
amino_acid_hash = { 'A' => 'Ala', 'R' => 'Arg', 'N' => 'Asn' } # etc.
você pode passar o nome do hash como o segundo argumento para gsub e ele o substituirá nos valores de hash.
"R232A".gsub(/[A-Z]/, amino_acid_hash)
=> "Arg232Ala"
Você também pode passar por um bloqueio:
"12345".gsub(/d/) { |n| n.to_i*2 }
=> "246810"