use strict; use warnings; my $annotation =' '; my $dna =' '; my $record =' '; my $save_input_separator =$/; open (DNAFILENAME,'f:\\perl\\strawBerry.gb')||die("can not open the file!"); $/ = "//\n"; $record = <DNAFILENAME>; ($annotation,$dna) = ($record=~/^(LOCUS.*ORIGIN\s*\n) (.*)\/\/\n/s); print "$annotation \n\n\n$dna\n";
这里面关键就是用到了模式匹配:
($annotation,$dna) = ($record=~/^(LOCUS.*ORIGIN\s*\n) (.*)\/\/\n/s);
这一行表示,如果在$record中可以匹配到(Locus.*ORIGIN\s*\n) 和(.*) 那么就将第一个括号中的数值赋给$annotation,把第二个括号中匹配的内容赋给$dna.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。