def grouper(s):
    return [s[i:i + j] for j in range(1, len(s) + 1) for i in range(len(s) -
        j + 1)]
vowels = {'A', 'I', 'O', 'U', 'E', 'a', 'i', 'o', 'u', 'e'}
[t for t in grouper(s) if t[0] in vowels]
Найти все возможные подстроки, начинающиеся с символов из группы захвата