import re
rx = r'(pattern)(\s*[\d\s]*\d)\b'
s = 'hello world pattern 24 4 5 this is an example pattern 4 3 11 6th oct 2018 pattern 4 3 11 124 2'
print(re.sub(rx, lambda x: "{}{}".format(x.group(1), "-".join(x.group(2).split())), s))
aW1wb3J0IHJlCnJ4ID0gcicocGF0dGVybikoXHMqW1xkXHNdKlxkKVxiJwpzID0gJ2hlbGxvIHdvcmxkIHBhdHRlcm4gMjQgNCA1IHRoaXMgaXMgYW4gZXhhbXBsZSBwYXR0ZXJuIDQgMyAxMSA2dGggb2N0IDIwMTggcGF0dGVybiA0IDMgMTEgMTI0IDInCnByaW50KHJlLnN1YihyeCwgbGFtYmRhIHg6ICJ7fXt9Ii5mb3JtYXQoeC5ncm91cCgxKSwgIi0iLmpvaW4oeC5ncm91cCgyKS5zcGxpdCgpKSksIHMpKQ==