вы можете попробовать разделить, используя пробел и использовать операции сравнения, такие как,
string = 'XY AL#2 Ext AL1 AL#3 Ext AL1 AL#4 Ext AL1 AL#5 Ext AL1'
temp = st.split(" ")
string_arr = []
temp_string = ""
for i in temp:
if "AL#" in i:
string_arr.append(temp_string)
string_arr.append(i)
temp_string = ""
else:
temp_string +=" " + i
print(string_arr) # result
дает результат = ['XY', 'AL # 2', 'Ext AL1', 'AL # 3', 'Ext AL1 ',' AL # 4 ',' Ext AL1 ',' AL # 5 ']