У меня есть следующие строки аминокислот:все возможные пептиды из строки аминокислот
s = 'SHVANSGYMGMTPRLGLESLLE*A*MIRVAS'
где *
обозначает стоп-кодон.
Я хочу, чтобы извлечь все пептиды (цепочки аминокислот, т.е. подстроки), которые удовлетворяют следующие условия:
- Цепочка начинается с аминокислотой
M
- цепь заканчивается
*
Если я использую регулярное выражение M.*?\*
в Python на этой конкретной строке, он возвращает один пептид:
MGMTPRLGLESLLE*
Это верно только отчасти, потому что она игнорирует другое возможное решение:
MTPRLGLESLLE*
Другими словами, мне нужно регулярное выражение, которое возвращает два пептиды:
MGMTPRLGLESLLE*
и
MTPRLGLESLLE*
Любые идеи?