7
A
回答
7
是的。如perldoc -f open
中所述,您可以打开文件句柄来标量变量。
my $data = <<'';
line1
line2
line3
open my $fh, '<', \$data;
while (<$fh>) {
chomp;
print "[[ $_ ]]\n";
}
# prints
# [[ line1 ]]
# [[ line2 ]]
# [[ line3 ]]
14
如果您确实需要,您可以打开一个文件句柄。
use strict;
use warnings;
my $lines = "one\ntwo\nthree";
open my $fh, "<", \$lines;
while(<$fh>) {
print "line $.: $_";
}
另外,如果你已经有了在内存中的东西,无论如何,你可能只是它分割成一个数组:
my @lines = split /\n/, $lines; # or whatever
foreach my $line(@lines) {
# do stuff
}
这可能会更容易阅读和维护的路线。
0
我发现了一个有用的替代,
它不使用< >但工作起来就像做
for (split /^/, $lines) {
...
}
相关问题
- 1. 从其他不在包中的Perl程序中读取变量
- 2. 批量 - 从变量读取
- 3. 从Perl注册表中读取Perl
- 4. 如何从std向量中读取并删除读取变量?
- 5. 从python读取JavaScript变量?
- 6. 从文件读取数字到变量(Perl)
- 7. 从shell中的多行变量读取
- 8. 从JavaScript中读取Heroku配置变量
- 9. 如何从BrowserField中读取javascript变量
- 10. 如何从文件中读取变量
- 11. 从文本文件中读取变量
- 12. 问题从文件中读取变量
- 13. 从javaScript中读取php变量?
- 14. 从selenium javascript中读取变量
- 15. 从文件中读取变量在Javascript
- 16. 从Java中读取xsl转换变量
- 17. Javascript,从数组中读取变量
- 18. 从文件中读取变量
- 19. Shell - Awk - 从变量中读取
- 20. 从Fortran中的文件读取变量
- 21. 尝试从Javascript中读取Firebase变量
- 22. 从变量读入变量
- 23. 从SQL变量的变量中读取字符串
- 24. 如何从文件中读取ASCII变量为int变量
- 25. Shell脚本从文件读取变量并在perl脚本中使用
- 26. 从perl正则表达式中清除只读变量
- 27. 在从perl中的文本文件中读取变量后将值赋给变量
- 28. 如何在Perl中读取多行文本到一个标量变量中
- 29. Perl Text :: CSV_XS从字符串中读取
- 30. Perl从无限循环中读取
一个可能的理由这样做是'开放ARGV的伎俩, '<',\ $ default_data除非@ ARGV'那么读取'<>'将使用默认数据,除非传入文件。 – 2012-07-23 03:44:37