#!/usr/bin/perl use strict; while( 1 ) { my $valid= or exit( 0 ); chomp( $valid ); my $dirty= or die "Missing second sequence"; chomp( $dirty ); print "Comparing $valid\nto $dirty\n"; my $pos= 0; while( "" ne $valid ) { my $codon= substr( $valid, 0, 3, "" ); my $next= index( $dirty, $codon, $pos ); if( $next < 0 ) { print "Match was not complete.\n"; last; } if( $pos < $next ) { print substr( $dirty, $pos, $next-$pos ), $/; } $pos= $next + 3; if( "" eq $valid && $pos < length($dirty) ) { print substr( $dirty, $pos ), $/; } } } __END__ ATGGAGTCGACGAATTTGAAGAAT GCACCGATGGAGTAGGTCGACGATCTCAATTTGTCGAAGAATTGG ATGGAGTCGACGAATTTGAAGAAT GCACCGATGGAGTAGGTCGACGATCTCAATTTGTCGAAGACTTGG