我有均聚物,如ACACAC,GTGT等重复。
如何在python中使用regex查找此类模式。例如。
seq = 'ACCTTAAAGG'
x = [(m.group(), m.start()) for m in re.finditer(r'([ACGT])\1{2,}', seq) if len(m.group()) > 3]
寻找长度> 1的A或T或G或C的重复。 3.
你能否建议我如何使用正则表达式来重复AT,CG,AG等类型的重复。
答案 0 :(得分:1)
您可以使用以下正则表达式(AC){3,}|(AG){3,}|(GC){3,}|(GT){3,}
>>> import re
>>> s = 'ACACACCTTAACGCGCGAGGCGCGCGC'
>>> pat = re.compile(r'(AC){3,}|(AG){3,}|(GC){3,}|(GT){3,}')
>>> [(m.group(), m.start()) for m in re.finditer(pat, s)]
[('ACACAC', 0), ('GCGCGCGC', 19)]