in reply to parsing mismatch from blast output

If the sequence strings being compared are always the same length, the string bitwise-xor trick is pretty quick and simple:

>perl -wMstrict -le "my $seq1 = 'AATGGGATCTAATTAAACTAAAGAGCTTCTGCACAGCAAAAGAAACTACCATC'; my $seq2 = 'AATGGGATCTAATTAAACTCAAGAGCTTCTGCACAGCAAAAGAAACTACCATC'; my $diff = $seq1 ^ $seq2; $diff =~ tr{\x00-\xff}{.*}; print $seq1; print $seq2; print $diff; " AATGGGATCTAATTAAACTAAAGAGCTTCTGCACAGCAAAAGAAACTACCATC AATGGGATCTAATTAAACTCAAGAGCTTCTGCACAGCAAAAGAAACTACCATC ...................*.................................

If the string length are not the same (i.e., characters were inserted or deleted, not just altered in place), this trick will at least get you the position of the first difference, and you're on your own thereafter to re-synchronize and find any other diffs. (I'm sure there are already many tools on CPAN and elsewhere to do this sort of thing!)