import re COMMON_SUFFIXES = { "co., ltd.", "co.,ltd.", "co. ltd.", "ltd.", "inc.", "corp.", "corporation", "co.", "llc", "plc", "gmbh", "주식회사", "(주)", "(사)", "유한회사", "株式会社", "有限会社", "合同会社", } def normalize_name(name: str) -> str: name = name.lower().strip() name = re.sub(r'[^ws]', '', name) name = re.sub(r's+', ' ', name) for suffix in sorted(COMMON_SUFFIXES, key=len, reverse=True): if name.endswith(suffix): name = name[:-len(suffix)].strip() return name