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.