我正在使用以下正则表达式:
orfre = '^(?:...)*?((ATG)(...){%d,}?(?=(TAG|TAA|TGA)))' % (aa)
我基本上想找到所有以 ATG 开头的序列,然后是三联体(例如 TTA、TTC、GTC 等),直到它在框架中找到一个终止密码子。但是,正如我的正则表达式所写的那样,如果 aa 很大,它实际上不会停在终止密码子处。相反,它将继续搜索,直到找到满足 aa 条件的一个。我宁愿让它搜索整个字符串,直到找到终止密码子。如果匹配不够长(对于给定的 aa 参数),那么它应该返回 None。
字符串数据:AAAATGATGCATTAACCCTAATAA
正则表达式的所需输出:ATGATGCATTAA
除非 aa > 5,在这种情况下不应返回任何内容。
我得到的实际输出:ATGATGCATTAACCCTAA