#!/usr/bin/perl -w
use strict;
my $string = $ARGV[0];
my @caracteresSeparados = split(//,$string);
my $temp;
my @complementoADN;
foreach my $i(@caracteresSeparados){
if($i eq 'a'){
$temp = 't';
push(@complementoADN,$temp);
}elsif($i eq 'c'){
$temp = 'g';
push(@complementoADN,$temp);
}elsif($i eq 'g'){
$temp = 'c';
push(@complementoADN,$temp);
}elsif($i eq 't'){
$temp = 'a';
push(@complementoADN,$temp);
}
}
printf("@complementoADN\n");
我有这个代码,它通过参数接收一个带有 A、C、G、T 字母的字符串。
我使用这个脚本的目标是接收用户可以在上面写这些字母的字符串,然后应该在控制台中打印替换的相同字母,我的意思是
- A 替换为 T
- C 替换为 G
- G 替换为 C
- T 替换为 A
我不限制用户介绍其他字母,但现在没问题......
一个例子:
用户介绍参数:ACAACAATGT
程序应打印:TGTTGTTACA
我的脚本做得对。
我的问题是,我可以用哈希列表来做吗?如果是的话,你能告诉我那个哈希工作的脚本吗?非常感谢 :)