text: user16468: I am able to find matching motif in my sequence, and I would like to now find overlapping motifs. Basically, after matching my motif, I want to find the 6 amino acids after it. This is the code below that I used to find the motif:
  import Bio
  import regex
  
  from Bio import SeqIO
  input_file = 'sequences.fasta'
  fasta_sequences = SeqIO.parse(open(input_file),'fasta')
  for fasta in fasta_sequences:
       name, sequence = fasta.id, str(fasta.seq)
       result=regex.finditer(r"[YFWLIMVA]..[LMALVN]..[AGSTCD].[LAIVNFYMW]",sequence)
       for x in result:
       print(name, x.start(), x.end(), x.group())
  
  The above code works perfectly becasue it give me the sequence id, positions and the motif. The output is below
  P1  33 41 VTLLPAADL
  
  Right now, what I want to do is to also get the 6 amino acids after matching this motif, such that I get an output like the one below where the length will now be 15,.
  P1 33 47 VTLLPAADLLMAIID
  
  The code that I have tried to get the 6 amino acids after my match is below.
  import Bio
  import regex
  
  from Bio import SeqIO
  input_file = 'sequences.fasta'
  fasta_sequences = SeqIO.parse(open(input_file),'fasta')
  for fasta in fasta_sequences:
       name, sequence = fasta.id, str(fasta.seq)
       result=regex.finditer(r"[YFWLIMVA]..[LMALVN]..[AGSTCD].[LAIVNFYMW]",sequence)
       for x in result:
       print(name, x.start(), x.end() + 6, x.group())
  
  This the output it gives me:
  #It does not extend my motif by 6 amino acids, after getting the match, it only extends the 
  #end position by 6. From 41 to 47.     
  P1  33 47 VTLLPAADL 
  
  #My desired output is this which include the overlapping LMAIID, the LMAIID is after the 
  #match.
  P1   33 47 VTLLPAADLLMAIID
  
  I also tried the code below, but it returns an error.
  import Bio
  import regex
  
  from Bio import SeqIO
  input_file = 'sequences.fasta'
  fasta_sequences = SeqIO.parse(open(input_file),'fasta')
  for fasta in fasta_sequences:
       name, sequence = fasta.id, str(fasta.seq)
       result=regex.finditer(r"[YFWLIMVA]..[LMALVN]..[AGSTCD].[LAIVNFYMW]",sequence)
       for x in result:
       print(name, x.start(), x.end() + 6, x.group() +6)
  
  
  user16468: This is how it managed to give the desired output.
  import Bio
  import re
  
  from Bio import SeqIO
  input_file = 'sequences.fasta'
  fasta_sequences = SeqIO.parse(open(input_file),'fasta')
  for fasta in fasta_sequences:
       name, sequence = fasta.id, str(fasta.seq)
       matches=re.finditer(r"[YFWLIMVA]..[LMALVN].[AGSTCD]..[LAIVNFYMW]",sequence)
       for x in matches:
       print(name, x.start(), x.end()+6,sequence[x.start():x.end()+6])
  
  #Output
  P1 33 47 VTLLPAADLLMAIID
  
  
original_text: 16468: <p>I am able to find matching motif in my sequence, and I would like to now find overlapping motifs. Basically, after matching my motif, I want to find the 6 amino acids after it. This is the code below that I used to find the motif:</p>
  <pre><code>import Bio
  import regex
  
  from Bio import SeqIO
  input_file = 'sequences.fasta'
  fasta_sequences = SeqIO.parse(open(input_file),'fasta')
  for fasta in fasta_sequences:
       name, sequence = fasta.id, str(fasta.seq)
       result=regex.finditer(r&quot;[YFWLIMVA]..[LMALVN]..[AGSTCD].[LAIVNFYMW]&quot;,sequence)
       for x in result:
       print(name, x.start(), x.end(), x.group())
  </code></pre>
  <p>The above code works perfectly becasue it give me the sequence id, positions and the motif. The output is below</p>
  <pre><code>P1  33 41 VTLLPAADL
  </code></pre>
  <p>Right now, what I want to do is to also get the 6 amino acids after matching this motif, such that I get an output like the one below where the length will now be 15,.</p>
  <pre><code>P1 33 47 VTLLPAADLLMAIID
  </code></pre>
  <p>The code that I have tried to get the 6 amino acids after my match is below.</p>
  <pre><code>import Bio
  import regex
  
  from Bio import SeqIO
  input_file = 'sequences.fasta'
  fasta_sequences = SeqIO.parse(open(input_file),'fasta')
  for fasta in fasta_sequences:
       name, sequence = fasta.id, str(fasta.seq)
       result=regex.finditer(r&quot;[YFWLIMVA]..[LMALVN]..[AGSTCD].[LAIVNFYMW]&quot;,sequence)
       for x in result:
       print(name, x.start(), x.end() + 6, x.group())
  </code></pre>
  <p>This the output it gives me:</p>
  <pre><code>#It does not extend my motif by 6 amino acids, after getting the match, it only extends the 
  #end position by 6. From 41 to 47.     
  P1  33 47 VTLLPAADL 
  
  #My desired output is this which include the overlapping LMAIID, the LMAIID is after the 
  #match.
  P1   33 47 VTLLPAADLLMAIID
  </code></pre>
  <p>I also tried the code below, but it returns an error.</p>
  <pre><code>import Bio
  import regex
  
  from Bio import SeqIO
  input_file = 'sequences.fasta'
  fasta_sequences = SeqIO.parse(open(input_file),'fasta')
  for fasta in fasta_sequences:
       name, sequence = fasta.id, str(fasta.seq)
       result=regex.finditer(r&quot;[YFWLIMVA]..[LMALVN]..[AGSTCD].[LAIVNFYMW]&quot;,sequence)
       for x in result:
       print(name, x.start(), x.end() + 6, x.group() +6)
  </code></pre>
   16468: <p>This is how it managed to give the desired output.</p>
  <pre><code>import Bio
  import re
  
  from Bio import SeqIO
  input_file = 'sequences.fasta'
  fasta_sequences = SeqIO.parse(open(input_file),'fasta')
  for fasta in fasta_sequences:
       name, sequence = fasta.id, str(fasta.seq)
       matches=re.finditer(r&quot;[YFWLIMVA]..[LMALVN].[AGSTCD]..[LAIVNFYMW]&quot;,sequence)
       for x in matches:
       print(name, x.start(), x.end()+6,sequence[x.start():x.end()+6])
  
  #Output
  P1 33 47 VTLLPAADLLMAIID
  </code></pre>
  