【发布时间】:2014-11-19 16:07:31
【问题描述】:
我正在尝试逐行打印以下内容:
My info
info | info | info |
-------------------------
1 | 1 |
2
3
.
.
.
我正在使用它来编码,但它无法按我的预期打印出来。
use strict;
use warnings;
my $file = 'myfile.txt';
open my $info, $file or die "Could not open $file: $!";
while( my $line = <$info>) {
if ($line =~ /info | info | info | /) {
print $line;
last if $. == 10;
}
}
close $info;
代码中是否有遗漏或出错的地方?
预期的结果应该在 CMD 上打印出来
info | info | info |
-------------------------
1 | 1 |
2
3
.
.
.
【问题讨论】:
-
竖线(|)是正则表达式中的特殊字符
-
您希望它打印什么?
-
@harmic 我希望它能打印出“我的信息到.”的部分。它是一个文本文件
-
if ($line =~ /\Qinfo | info | info |/ .. 10)=> perldoc.perl.org/perlop.html#Range-Operators -
请向我们展示预期的输出。
标签: perl