【发布时间】:2014-05-03 17:47:36
【问题描述】:
我想从文件的第一行读取一个字符串,然后在控制台中重复 n 次,其中 n 被指定为第二行文件。
我觉得很简单?
#!/usr/bin/perl
open(INPUT, "input.txt");
chomp($text = <INPUT>);
chomp($repetitions = <INPUT>);
print $text x $repetitions;
其中input.txt如下
Hello
3
我希望输出是
HelloHelloHello
尽管使用了chomp,但单词是换行符。
Hello
Hello
Hello
你可以试试下面的 Perl fiddle CompileOnline
奇怪的是,如果代码如下:
#!/usr/bin/perl
open(INPUT, "input.txt");
chomp($text = <INPUT>);
print $text x 3;
它可以正常工作并显示
HelloHelloHello
是我理解有误,还是在线编译器有问题?
【问题讨论】:
-
这看起来像是行尾问题...您在哪个平台上工作?
-
hexdump -C input.txt和perl -e 'print $/' | hexdump -C是什么? -
我正在使用初始帖子compileonline.com/execute_perl_online.php中提到的在线 Perl 编辑器/编译器
-
hexdump 结果为:00000000 48 65 6c 6c 6f 0d 0a 33 |Hello..3| 00000008