from itertools import groupby

def split_case(s):
    cats = str.isupper, str.islower, lambda x: True
    cat = lambda c: next(i for i, f in enumerate(cats) if f(c))

    return [''.join(g) for _, g in groupby(s, cat)]

print(split_case('FUCK you!!!11!'))