Предположим, у меня есть шаблон * 123 * 234 * 567, который повторяется ровно три раза (как комбинация * и (. *?).
Как мне написать регулярное выражение, что шаблон может соответствовать только 3 раза, а не более или менее?
Вы можете использовать группу без захвата и искать 3 последовательных совпадений.Не уверен, что вы хотите сопоставить между звездочками, я предположил цифры и буквенно-цифровые символы:
3
s = '*42*998 *123*234*567 *123*123' re.findall(r'(?:\*(?:\d+|\w+)+){3}', s) # '*123*234*567']