Я пытаюсь найти все вхождения подстроки, используя регулярное выражение. Подстрока состоит из трех частей, начинается с одной или нескольких «А», за которыми следует одна или несколько «N» и заканчивается одной или несколькими буквами «А». Пусть строка 'AAANAANABNA' , и если я проанализирую строку, я должен получить две подстроки 'AAANAA' и 'AANA' в качестве вывода. Итак, я попробовал приведенный ниже код.
import regex as re
reg_a='A+N+A+'
s='AAANAANABNA'
sub_str=re.findall(reg_a,s,overlapped=True)
print(sub_str)
И я получаю следующий результат:
['AAANAA', 'AANAA', 'ANAA', 'AANA', 'ANA']
Но мне нужен результат как
['AAANAA', 'AANA']
То есть конечные А первого совпадения должны быть ведущими А следующего совпадения. Как я могу это понять?