Давайте немного изменим исходную строку:
x = "jhg**11111**jjhgj**22222**klhhkjh33333jhjkh44444"
Регулярное выражение должно быть:
pat = r'(.)\1{4}'
Здесь у вас есть группа захвата (один символ) и обратная ссылка на нее(4 раза), поэтому один и тот же символ должен встречаться 5 раз.
Один из вариантов печати результата, хотя и менее интуитивно понятный:
res = re.findall(pat, x)
print(res)
Но приведенный выше код печатает:
['1', '2', '3', '4']
то есть список, где каждая позиция только группа захвата (в нашем случае первый символ), а не все совпадение.
Поэтому я предлагаю также второй вариант, с finditer
и печатью как начальной позиции, так и целого соответствия:
for match in re.finditer(pat, x):
print('{:2d}: {}'.format(match.start(), match.group()))
Для приведенных выше данных результат будет:
5: 11111
19: 22222
33: 33333
43: 44444