0

我有两个字符串 $dna1 和 $dna2。将两个字符串作为连接打印,然后在连接字符串的末尾打印在其副本上排列的第二个字符串。例如,如果输入字符串是 AAAA 和 TTTT,则打印:

AAAATTTT
    TTTT 

这是一个自我练习题..不是家庭作业,

我尝试使用索引 #!/usr/bin/perl -w

$a ='AAAAAAAAAATTTTTTTTT';
$b ='TTTTTTTTTT';
print $a,"\n";
print ''x index($a,$b),$b,"\n"; 

但它没有按需要工作。请帮助

4

2 回答 2

2

首先检查index($a,$b)返回的内容......也许你应该选择一个$b实际在$a

然后意识到连接 10 个空字符串的实例是一个空字符串,而不是 10 个空格。

于 2013-02-05T22:28:01.770 回答
2

这是一个有趣的小练习。我这样做了:

perl -lwe'$a="AAAA"; $b="TTTT"; $c = $a.$b; $i = index($c,$b) + length($b); 
          print $c; printf "%${i}s\n", $b;'
AAAAAAATTTT
       TTTT

请注意,一般来说,通过使用变量名称$a$c一个坏主意,并且仅在此处可接受,因为它是单行的。$a并且$b也是与 . 一起使用的保留变量名称sort

于 2013-02-05T22:46:26.307 回答