我正在尝试编写一个循环来确定用户输入是否与字符串$ rev匹配。无论我为$ seq键入什么,它都会返回它不匹配,即使它实际上是。我究竟做错了什么?谢谢你的帮助。
$seq = <>;
$rev = "string";
if ($seq eq $rev){
printf("The two strings match.\n");
}
else {
printf("The two strings do NOT match.\n");
}
答案 0 :(得分:8)
您需要chomp输入以删除换行符:
$seq = <>;
chomp $seq;
$rev = "string";
if ($seq eq $rev){
print "The two strings match.\n";
}
else {
print "The two strings do NOT match.\n";
}
此外,使用print
代替printf
,因为您没有指定格式。
答案 1 :(得分:1)
更改代码
$seq = <>;
到
chomp($seq = <>);