Difference between revisions of "Exercise 5.8D"
Jump to navigation
Jump to search
(New page: Return to Week 2 <br> Exercise 5.3 in <i>Beginning Perl for Bioinformatics</i></b> <pre> #!/usr/bin/perl -w use strict; #Damian Almiron #Ex 5-8 #Ask user for the filename of th...) |
|||
Line 1: | Line 1: | ||
Return to [[Week 2]] | Return to [[Week 2]] | ||
<br> | <br> | ||
− | Exercise 5. | + | Exercise 5.8 in <i>Beginning Perl for Bioinformatics</i></b> |
<pre> | <pre> |
Latest revision as of 11:48, 18 December 2009
Return to Week 2
Exercise 5.8 in Beginning Perl for Bioinformatics
#!/usr/bin/perl -w use strict; #Damian Almiron #Ex 5-8 #Ask user for the filename of the file containing the protein sequence #data, and collect it from the keyboard print "Please type the filename of the protein sequence data: "; my $proteinfilename = <STDIN>; #Remove the newline from the protein filename chomp $proteinfilename; #Open the file, or exit unless ( open (PROTEINFILE, $proteinfilename) ) { print "Cannot open file \"$proteinfilename\"\n\n"; exit; } #Read the protein sequence data from the file, and store it #into the array variable @protein my @protein = <PROTEINFILE>; #Close the file - we've read all the data into @protein now. Close PROTEINFILE; #Put the sequence data into a single string, as it's easier # to search for a motif in a string than in an array of lines my $protein = join( '' , @protein); #Remove white space $protein =~ s/\s//g; #In a loop, ask the user for a motif, search for the motif #and report if it was found. Exit if no motif is entered. do { print "Enter a motif to search for: "; my $motif = <STDIN>; #Remove the newline at the end of $motif chomp $motif; #Look for the motif if ( $protein =~ /$motif/, $& ) { print "I found the motif:$&\n"; } else { print "I couldn\'t find it.\n"; } #Exit on an empty user input } until ( $motif =~ /^\s*$/ ); #Exit the program exit;