perl - 为什么这没有按预期连接?

标签 perl concatenation

我正在尝试学习一些 Perl 并做一些简单的练习来让自己习惯它。

其中一个练习是操纵字符串,我写了下面的内容。

#!/usr/bin/perl

use strict;

print "Please enter some text..\n";
my $string =<STDIN>;

my $string_reverse = reverse $string;
print "Reversed: $string_reverse\n";

my $string_length = length $string;
print "Length: $string_length\n";

my $string_upper = uc $string;
print "Uppercase: $string_upper\n";

my $string_lower = lc $string;
print "Lowercase: $string_lower\n";
print "Enter a second bit of text\n";

my $second_string = <STDIN>;
print $string . $second_string;

这会产生以下输出。

Please enter some text..
test
Reversed:
tset
Length: 5
Uppercase: TEST

Lowercase: test

Enter a second bit of text
123
test
123

我希望连接的文本显示为:

test123

为什么每次都换行显示?

最佳答案

my $string =<STDIN>;

读入一个字符串,包括一个换行符。

尝试使用 chomp 来修剪换行符。

关于perl - 为什么这没有按预期连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21484231/

相关文章:

R 在组内跨行连接但保留序列

ruby - 查找和替换多个单词

perl - 在脚本中使用 Bugzilla Perl API 时如何进行身份验证?

arrays - 如何在 Ruby 中有效地连接多个数组?

python - 使用 pandas 有条件地连接 python 中的数据框

c++ - Concat 程序,奇怪的符号

java - 将 Perl 脚本中的值返回到 java 表单

c - 文件处理是什么意思?

perl - PERL 中的模式匹配以句点 "."结尾

java - 字符串连接的低效使用