gpt4 book ai didi

perl - 从文件中读取第 3 到 5 行,如何将这些行号转换为变量?

转载 作者:行者123 更新时间:2023-12-04 05:38:11 26 4
gpt4 key购买 nike

我是 perl 的新手,但我只是想打开一个文件并从中读取一些行。

到目前为止的代码如下所示:

open FILE, "file.txt" or die "can not open file"; 
while (<FILE>) {
print if ($.== 3..5)
}

但是我需要能够更改要获取的行。所以那些 3 和 5 数字需要是变量。

也有人可以帮助我更好地理解这段代码吗?我想知道什么 $.确切地说,我将如何将打印命令替换为将其放入数组或其他内容以进一步处理这些行?

谢谢!

最佳答案

注意语法。通过 perl -MO=Deparse,-p 运行您的示例表明 perl 将其解释为

(open(FILE, 'file.txt') or die('can not open file'));
while (defined(($_ = <FILE>))) {
((($. == 3) .. 5) and print($_));

幸运的是,范围运算符会做您希望它做的事情,因为 ..用途 $. (输入行号)默认。

要使用变量而不是常量,只需使用
print if $. == $x .. $. == $y;

关于perl - 从文件中读取第 3 到 5 行,如何将这些行号转换为变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11651151/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com