【问题标题】:String Concatenation Error Using Perls Dot Operator [duplicate]使用 Perls 点运算符的字符串连接错误 [重复]
【发布时间】:2017-07-24 09:07:34
【问题描述】:

我正在尝试从用户键盘读取两个字符串的输入,将它们存储在两个变量中,然后使用 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

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

【问题讨论】:

    标签: string perl concatenation user-input


    【解决方案1】:

    您可以使用“chomp”来删除尾随字符串“\n”,如下所示:

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

    【讨论】:

    • 并且可能在print 语句中的$stringb 之后添加. "\n"(或者不要咀嚼$stringb)。
    猜你喜欢
    • 2012-11-11
    • 1970-01-01
    • 1970-01-01
    • 2019-11-18
    • 2015-01-11
    • 2012-12-24
    • 2021-12-10
    • 2012-05-07
    • 1970-01-01
    相关资源
    最近更新 更多