in reply to Re^2: How to parse string to substrings based on character occurence in the string
in thread How to parse string to substrings based on character occurence in the string

does this make sense?

Not completely.

  1. *HDV**HYW*RW*WMYMRV* doesn't appear in your input.

    Did you mean *DV**HYW*RW*WMYMRV* (6*, 19) or H*DV**HYW*RW*WMYMRV* (6*,20)?

    And if the latter, why?

  2. Why R*KR**YWHHWH...DYD* (4*, 19 length) instead of *KR**YWHHWH...DYD* (4*, 18 length)

Maybe this is something like your goal?

#! perl -slw use strict; my $seq = 'RKRMMWW*VWMWRYHDWMH*HR*DRMDMWHMWYVMWVRWMVBHWKVYWSMHYWY*HWVM +VSKD' . 'HMDBYKMWRSMDSD*...**Y*WD*VWDRYHHYRYKRWWDDKDDH*DV**HYW*RW*WMYMRV +*BWB'; my %uniq; substr( $seq, $_, 25 ) =~ m[(\*.{8,23}\*)] and ++$uniq{ $1 } == 1 and print "'$1'" for 0 .. length( $seq )-1; __END__ C:\test>827470 '*VWMWRYHDWMH*HR*' '*HWVMVSKDHMDBYKMWRSMDSD*' '*...**Y*WD*' '*WD*VWDRYHHYRYKRWWDDKDDH*' '*VWDRYHHYRYKRWWDDKDDH*' '*VWDRYHHYRYKRWWDDKDDH*DV*' '*DV**HYW*RW*' '*DV**HYW*RW*WMYMRV*' '**HYW*RW*WMYMRV*' '*HYW*RW*WMYMRV*' '*RW*WMYMRV*'

Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.
"I'd rather go naked than blow up my ass"