With Python it's gorgeously simple, my problem is instantly solved in one method:
text='''
dab
a
b
c
dab
e
f
g
dab
h
i
j
'''
print(text.split('dab'))
Nevertheless, doing everything in Bash is a comfortable advantage to keep in my use case. Unfortunately, looking around it seems that there is no good way to do string splitting with multi-character delimiters on say stdout in the shell (natively or external tools). I'd be glad to be proved wrong :)
[UPDATE]
Sorry for not specifying this before, but the focus was on collecting in an array rather than printing.