Python-получить строку между символами

Мне нужно дать мне строку между~ а также^.
У меня есть такая строка:

~~~~ ABC ^ DEF ^ HGK > LMN ^  

Мне нужно получить строку между ними с помощью Python.
Я пробовал это:

import re
target = ' ~~~~ ABC ^ DEF ^ HGK > LMN ^  '
matchObj = re.findall(r'~(.*?)\^', target)
print matchObj 

Но результат:

['~~~ ABC ']

Я ожидаю, что это:

[ABC , DEF , HGK , LMN ]

или же

[^ABC , ^DEF , ^HGK , LMN ]

Ответы на вопрос(4)

Ваш ответ на вопрос