use strict ; use warnings ; my $input = "NDDDDTSVCLGTRQCSWFAGCTNRTWNSSA 0" ; my @F = split'',$input ; my @ar ; @ar[map { ord } split '','ARNDBCEQZGHILKMFPSTWYV'] = 1..127 ; foreach ( @F ) { print( ($ar[ord $_] // $_ ) . " " ) ; }