perl - `$/` 和 `local $/` 的区别
问题描述
对于我的程序,我需要使用 FASTA 文件并使用它们进行一些计算。为了做到这一点,我使用local $/ = "^>
, 将我的文件分成标题行和序列行。虽然我的程序做我想做的事,但为什么我不能简单地使用$/ = "^>"
?当我尝试它时,我的结果不是我需要的,我很感兴趣为什么会这样。这是我的简化代码:
my @array;
while(<>){
local $/ = "^>";
chomp;
push (@array, $_);
if(eof){
for(@array){
...
}
...
}
if(eof){
@array = ();
}
解决方案
推荐阅读
- spring - 获取 Spring Data REST API 的子资源返回 404 Not Found
- amazon-cloudformation - 在启动时引导 EC2 实例以安装 awslogs
- javascript - 通过比较两个数组基于索引映射键
- python - SMTPServerDisconnected:连接意外关闭
- google-cloud-platform - 使用 GKE 集群在 Stackdriver 中启用毫秒级日志记录
- sql-server - 使用 VBA 从 Excel 到 SQL Server 表的 INSERT INTO 语句
- oracle - 如何将预构建的 Perl DBD::Oracle 移植到 Oracle 库的不同位置?
- scheme - 记忆化表现 - SICP 练习 3.27 似乎是错误的
- android - Android布局:在XML布局中定义onClick,它引用超类中的方法
- python - 跟踪 Python 程序