2017-03-04 57 views
-2

我想从用户键盘读取两个字符串的输入,将它们存储在两个变量中,并使用Perls点运算符将两个字符串连接在一起。使用Perls点运算符的字符串串联错误

我在网上找到的研究显示了一个类似于我想要完成的例子。这个例子只使用一个字符串变量的串联,但我认为类似的东西应该能够连接多个变量一起:

$name = checkbook'; 
$filename = '/tmp/' . $name . '.tmp'; 

#$filename now contains "/tmp/checkbook.tmp" 

http://alvinalexander.com/perl/edu/articles/pl010003.shtml

我的代码显示在下面的 - 但是,我仍然得到了不想要的串联:

$stringa=<STDIN>; 
$stringb=<STDIN>; 
print $stringa.$stringb; 

用perl(路径)编译

输出

 nein 
    ja 
    nein 
    ja 

,而不是期望的输出:

nein 
ja 
neinja 

为什么我没有得到串联的输出,我认为它应该产生?

回答

1

你可以用 “格格” 删除尾随字符串 “\ n”,像这样:

$stringa=<STDIN>; 
$stringb=<STDIN>; 
chomp($stringa); 
chomp($stringb); 
print $stringa.$stringb; 
+0

,可能加上'。 “'print'语句中的'$ stringb'之后的\ n”'(或不要chomp'$ stringb')。 –