다음은 사용자가 제공 한 모티프에 대해 명령 행에서 입력 한 FASTA 파일을 검색하는 코드입니다. 내가 그것을 실행하고 파일에있는 모티프를 입력하면 'Motif not found'가 반환됩니다. 필자는 Perl의 초보자 일 뿐이며 제목 줄을 반환하지 않고 발견 된 모티브를 인쇄하는 방법을 알아낼 수는 없습니다. 이 문제를 해결할 수있는 도움을 주시면 감사하겠습니다.모티프에 대한 FASTA 파일 검색 및 모티프가 포함 된 각 시퀀스의 제목 줄 반환
감사합니다.
use warnings;
use strict;
my $motif;
my $filename;
my @seq;
#my $motif_found;
my $scalar;
$filename = $ARGV[0];
open (DNAFILE,$filename) || die "Cannot open file\n";
@seq = split(/[>]/, $filename);
print "Enter a motif to search for; ";
$motif = <STDIN>;
chomp $motif;
foreach $scalar(@seq) {
if ($scalar =~ m/$motif/ig) {
print "Motif found in following sequences\n";
print $scalar;
} else {
print "Motif was not found\n";
}
}
close DNAFILE;
한 줄로 된 코드에 대한 설명을 쓰지 마십시오. 그들은 아무 것도 추가하지 않습니다. –
DNA 시퀀스가 여러 줄로 나뉘어있는 Fasta 파일을 처리합니까? BioPerl의 Fasta 파서를 사용하는 것이 좋습니다. –