import re
text = "XYZXYZXYXX XYZXYZ\nXYZXY XYZXYZ"
for line in text.splitlines():
matches = re.findall(r'(?:XYZ)+(?:X(?:YZ?))?', line)
if matches:
longest = max(matches, key=len)
print(f'{line}: {longest} (Длина: {len(longest)})')
else:
print(f'{line}: NO MATCH')
aW1wb3J0IHJlCnRleHQgPSAiWFlaWFlaWFlYWCBYWVpYWVpcblhZWlhZIFhZWlhZWiIKZm9yIGxpbmUgaW4gdGV4dC5zcGxpdGxpbmVzKCk6CgltYXRjaGVzID0gcmUuZmluZGFsbChyJyg/OlhZWikrKD86WCg/OllaPykpPycsIGxpbmUpCglpZiBtYXRjaGVzOgoJCWxvbmdlc3QgPSBtYXgobWF0Y2hlcywga2V5PWxlbikKCQlwcmludChmJ3tsaW5lfToge2xvbmdlc3R9ICjQlNC70LjQvdCwOiB7bGVuKGxvbmdlc3QpfSknKQoJZWxzZToKCQlwcmludChmJ3tsaW5lfTogTk8gTUFUQ0gnKQ==