以下は、コマンドラインで入力された FASTA ファイルを検索して、ユーザーが提供したモチーフを検索するためのコードです。それを実行して、ファイルにあることがわかっているモチーフを入力すると、「モチーフが見つかりません」と返されます。私は Perl の初心者にすぎません。タイトル行を返すどころか、見つかったモチーフを印刷する方法もわかりません。これを解決するための助けをいただければ幸いです。
ありがとう。
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;