ORF_sequences = re.findall(r'ATG(?:...){9,}?(?:TAA|TAG|TGA)',sequence) #thanks to @Martin Pieters and @nneonneo
我有一行代码可以找到 A|G 的任何实例,后跟 2 个字符,然后是 ATG,当以 3 为单位读取时,ATG 后跟 TAA|TAG|TGA。仅在 A|G-xx-ATG 时有效-xxx-TAA|TAG|TGA 为 30 个或更多元素
我想添加一个条件
我需要 ATG 后跟一个 G
所以 A|G-xx-ATG-Gxx-xxx-TAA|TGA|TAG #至少 30 个元素长 示例:GCCATGGGGTTTTTTTTTTTTTTTTTTTTTTTTTGA ^ 可以工作
GCATGAGGTTTTTTTTTTTTTTTTTTTTTTTTTGA
^ would not work because it is an (A|G) followed by only one value (not 2) before the ATG and there is not a G following the A|G-xx-ATG
我希望这是有道理的
我试过
ORF_sequences = re.findall(r'ATGG(?:...){9,}?(?:TAA|TAG|TGA)',sequence)
但它似乎在 ATGG 的最后一个 G 之后使用了窗口大小 3
基本上我需要那个代码,其中第一次出现是 A|G-xx-ATG,第二次出现是 (G-xx)