小编Swo*_*ard的帖子

Java Regex用于基因组拼图

当给出一串字母A,C,G或T时,我被分配了一个问题来找到基因,如ATGCTCTCTTGATTTTTTTATGTGTAGCCATGCACACACACATAAGA.基因以ATG开始,以TAA,TAG或TGA结束(该基因不包括两个端点).该基因由三个字母组成,因此其长度是三的倍数,并且这些三元组中没有一个可以是上面列出的起点/终点三元组.因此,对于其中基因的字符串是CTCTCT和CACACACACACA.事实上,我的正则表达式适用于该特定字符串.这是我到目前为止所做的事情(我对自己很满意,我到目前为止):

(?<=ATG)(([ACGT]{3}(?<!ATG))+?)(?=TAG|TAA|TGA)
Run Code Online (Sandbox Code Playgroud)

但是,如果在另一个结果中存在ATG和end-triplet,并且未与该结果的三元组对齐,则它将失败.例如:

Results for TCGAATGTTGCTTATTGTTTTGAATGGGGTAGGATGACCTGCTAATTGGGGGGGGGG :
TTGCTTATTGTTTTGAATGGGGTAGGA
ACCTGC
Run Code Online (Sandbox Code Playgroud)

它也应该找到一个GGG,但不会:TTGCTTATTGTTTTGA(ATG | GGG | TAG)GA

我一般都是正则表达式的新手而且有点卡住...只是一点点暗示会很棒!

java regex

7
推荐指数
1
解决办法
589
查看次数

标签 统计

java ×1

regex ×1