找到5个相同的字符后修剪字符串

时间:2016-03-31 20:53:34

标签: regex python-2.7 substring trim

假设我有一个字符串AAAGCTTACGAAAAAAACGTA,我想删除4 A s之后的任何内容,无论它出现在字符串中的哪个位置。因此,对于此示例,我们在修剪后留下AAAGCTTACG。什么是快速有效的方法呢?

3 个答案:

答案 0 :(得分:4)

你可以使用贪婪的比赛,什么也不用。

import re
new_string = re.sub(r'AAAA.*', '', original_string)

或者,AAAA如果您发现它更具可读性,也可以表示为A{4}

答案 1 :(得分:4)

您可以使用str.split()

>>> s = "AAAGCTTACGAAAAAAACGTA"
>>> s.split("AAAA", 1)[0]
'AAAGCTTACG'

答案 2 :(得分:1)

find AAAA >>> s = "AAAGCTTACGAAAAAAACGTA" >>> s[:s.find("AAAA")] 'AAAGCTTACG' ,如果有,请切片:

AAAA

但是,这样你应首先检查字符串是否包含{{1}},否则它将切掉最后一个字符。