我试图找到DNA序列中最长的连续重复DNA核苷酸链。DNA序列是一个字符串。例如,如果我有"AGA"
,我想知道链中"AGA"
的最长连续重复链的长度
我正在考虑使用正则表达式来提取核苷酸的所有重复链,并将它们存储在一个列表中(使用^{
我可以为此编写什么正则表达式?例如,我在想[AGA]+
,但它会用A或G或A来识别子串。我想要类似的东西,以便它识别"AGA"
及其重复
注:如果序列为AATGAGAAGAAGATCCTAGAAGAAGAAGAAGACGAT
,则有两条连续的"AGA"
链,一条为长度3,另一条为长度5。因此,最长的链条长度为5
这是查找匹配子序列的另一种方法
可以将第一个匹配项用于以下正则表达式:
Python code<“\(ツ) /'>;Start your engine!
Python的正则表达式引擎执行以下操作
如果后面的字符串中有另一个
"AGA"
字符串至少与候选字符串一样长,则拒绝该候选字符串"AGA"
可能存在多个匹配项。例如,如果字符串
正如我在派对礼帽上指出的那样,将有三场比赛。由于比赛的长度从左到右始终不减少,因此没有一场比赛会比第一场比赛长。因此,我们可以选择第一场比赛
如果想要识别所有最长的匹配项(如果有多个匹配项具有最长的长度),可以使用上面的正则表达式获得四个匹配项,然后将字符串与正则表达式匹配
您可以使用表达式
((AGA)\2*)
(regex101):例如:
印刷品:
相关问题 更多 >
编程相关推荐