2024-07-05 14:45:27 发布
网友
我有一个很长的序列,其中有一个特定的字符串('say GAATTC')在整个序列字符串中随机重复多次。我目前正在使用正则表达式.span()提供模式“GAATTC”所在位置的索引。现在我想使用这些索引来分割G和A之间的模式(即“G | AATTC”)。你知道吗
如何使用match对象中的数据将它们切掉?你知道吗
如果您想用“G | AATTC”替换“GAATTC”(不确定您最后想做什么),我认为您可以不用regex来处理这个问题:
>>> string = 'GAATTCAAGAATTCTTGAATTCGAATTCAATATATA' >>> string.replace('GAATTC', 'G|AATTC') 'G|AATTCAAG|AATTCTTG|AATTCG|AATTCAATATATA'
编辑:好的,这种方式可以根据您的需要进行调整:
>>> groups = string.replace('GAATTC', 'G|AATTC').split('|') >>> groups ['G', 'AATTCAAG', 'AATTCTTG', 'AATTCG', 'AATTCAATATATA'] >>> map(len, groups) [1, 8, 8, 6, 13]
如果我理解正确的话,您有一个字符串和一个索引,序列GAATTC从这里开始,那么您需要这个(i这里是组的m.start)?你知道吗
GAATTC
i
m.start
>>> seq = "GAATTC" >>> s = "AATCCTGAGAATTCAAC" >>> i = 8 # the index where seq starts in s >>> s[i:] 'GAATTCAAC' >>> s[i:i+len(seq)] 'GAATTC'
它提取了它。您还可以在G处对原始序列进行切片,如下所示:
G
>>> s[:i+1] 'AATCCTGAG' >>> s[i+1:] 'AATTCAAC' >>>
如果您想用“G | AATTC”替换“GAATTC”(不确定您最后想做什么),我认为您可以不用regex来处理这个问题:
编辑:好的,这种方式可以根据您的需要进行调整:
如果我理解正确的话,您有一个字符串和一个索引,序列
GAATTC
从这里开始,那么您需要这个(i
这里是组的m.start
)?你知道吗它提取了它。您还可以在
G
处对原始序列进行切片,如下所示:相关问题 更多 >
编程相关推荐