import re
strings = ["JOHN,MARK,EDDIE", "JOHN", "JOHN,", "JOHN MARK", "JOHN,MARK,EDDIE,JOHN"]
for s in strings:
m = re.match("^[A-Z]{3,20}(?:,[A-Z]{3,20})*$", s)
if m:
parts = s.split(',')
res = len(parts) == len(set(parts))
print("{}:{}".format(s, res))
aW1wb3J0IHJlCnN0cmluZ3MgPSBbIkpPSE4sTUFSSyxFRERJRSIsICJKT0hOIiwgIkpPSE4sIiwgIkpPSE4gTUFSSyIsICJKT0hOLE1BUkssRURESUUsSk9ITiJdCgpmb3IgcyBpbiBzdHJpbmdzOgogICAgbSA9IHJlLm1hdGNoKCJeW0EtWl17MywyMH0oPzosW0EtWl17MywyMH0pKiQiLCBzKQoKICAgIGlmIG06CiAgICAgICAgcGFydHMgPSBzLnNwbGl0KCcsJykKICAgICAgICByZXMgPSBsZW4ocGFydHMpID09IGxlbihzZXQocGFydHMpKQogICAgICAgIHByaW50KCJ7fTp7fSIuZm9ybWF0KHMsIHJlcykp